When working with submodules it is easy to end up in a state when submodule commits required by the super-project only is present locally. This is most often a human error (although technical errors such as connection failure can be a reason). This patch-series tries to prevent pushing a super-project if not all (by the super-project used) submodules are pushed first. This will prevent the human error of forgetting to push submodules before pushing the super-project. This is a RFC-series, please consider: * Is this going into the right direction? * Should we use a new flag similar to REF_STATUS_REJECT_NONFASTFORWARD? Future improvements could be: * Make git status aware of unpushed submodules. * Show a list of unpushed submodules when a push is denied. Fredrik Gustafsson (1): Don't push a repository with unpushed submodules Heiko Voigt (1): test whether push checks for unpushed remotes in submodules submodule.c | 79 ++++++++++++++++++++++++++++++++++++++++ submodule.h | 1 + t/t5531-deep-submodule-push.sh | 68 ++++++++++++++++++++++++++++++++++ transport.c | 8 ++++ 4 files changed, 156 insertions(+), 0 deletions(-) -- 1.7.6.rc3.2.g0185a -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html