From: Alex Riesen Date: Tue, 29 Nov 2005 22:10:24 GMT Subject: Re: [PATCH] Make git-mv work in subdirectories, too Message-ID: <20051129221024.GB3033@steel.home> In-Reply-To: <7vmzjsdt3z.fsf@assigned-by-dhcp.cox.net> Junio C Hamano, Sat, Nov 26, 2005 03:45:52 +0100: > > Turns out, all git programs git-mv uses are capable of operating in > > a subdirectory just fine. So don't complain about it. > > > > Signed-off-by: Johannes Schindelin > > > > --- > > > > I am no Perl guru, so this might not be the best way to go > > about it. Also, if people agree, I would like to remove the > > extra check for GIT_DIR validity, since git-rev-parse --git-dir > > does that already. > > I think that sounds sane. You need to grab the exit status from > `git-rev-parse --git-dir`, so the patch would become something > like the attached. I haven't seriously used git-mv myself, so > somebody needs to test it, and if it actually works and Ack on > it, please. It actually works in subdirs. --- t/t4007-mv.sh #!/bin/sh test_description='git-mv in subdirs' . ./test-lib.sh test_expect_success \ 'prepare reference tree' \ 'mkdir path0 path1 && cp ../../COPYING path0/COPYING && git-add path0/COPYING && git-commit -m add -a' test_expect_success \ 'moving the file' \ 'cd path0 && git-mv COPYING ../path1/COPYING' # in path0 currently test_expect_success \ 'commiting the change' \ 'cd .. && git-commit -m move -a' test_expect_success \ 'checking the commit' \ 'git-diff-tree -r -M --name-status HEAD^ HEAD | \ grep -E "^R100.+path0/COPYING.+path1/COPYING"' test_done