Here is my third iteration of this series. Changes to v2 are: - I resolved the conflict with Duy's pathspec series by replacing the use of common_prefix() with relative_path(). - I separated the functions checking for modified unstaged .gitmodules and staging the changes to that file into another commit, as they are used by both mv and rm. - mv and rm now die with the message "Please, stage your changes to .gitmodules or stash them to proceed" instead of changing and staging a .gitmodules file containing other unstaged modifications. - Man pages for mv and rm are updated to tell the user what they do with the gitlink and the .gitmodules file in case of submodules. - Minor changes according to the last review (typos and a bit more efficient coding). This series applies cleanly on current pu (and I also ran t3600 and t7001 manually to make sure I don't hit the silent breakage my last series showed when I ran the whole test suite). Jens Lehmann (5): Teach mv to move submodules together with their work trees Teach mv to move submodules using a gitfile submodule.c: add .gitmodules staging helper functions Teach mv to update the path entry in .gitmodules for moved submodules rm: delete .gitmodules entry of submodules removed from the work tree Documentation/git-mv.txt | 10 ++- Documentation/git-rm.txt | 8 ++- builtin/mv.c | 126 ++++++++++++++++++++++---------------- builtin/rm.c | 19 +++++- submodule.c | 147 +++++++++++++++++++++++++++++++++++++++++++++ submodule.h | 5 ++ t/t3600-rm.sh | 98 ++++++++++++++++++++++++++++-- t/t7001-mv.sh | 128 +++++++++++++++++++++++++++++++++++++++ t/t7400-submodule-basic.sh | 14 ++--- t/t7610-mergetool.sh | 6 +- 10 files changed, 484 insertions(+), 77 deletions(-) -- 1.8.4.rc0.199.g7079aac -- 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