[PATCH v3 0/5] Teach mv to move submodules
- From
Jens Lehmann <jens.lehmann@web.de>
- Date
- Jul 30, 2013, 19:48 UTC
- Message-ID
- <51F8187F.7040603@web.de>
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