Re: [PATCH] Make git-mv work in subdirectories, too
- From
Alex Riesen <raa.lkml@gmail.com>
- Date
- Nov 29, 2005, 22:10 UTC
- 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:
Show 17 quoted lines
> > 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 <Johannes.Schindelin@gmx.de> > > > > --- > > > > 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