git/list[1] front-page[2] threads[3] people[4] search[5] about
 

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
Previous: Junio C HamanoNext: Josef Weidendorfer
Message 3 of 4 in “Make git-mv work in subdirectories, too”
  1. Make git-mv work in subdirectories, tooJohannes Schindelin, Nov 25, 2005
  2. Junio C HamanoNov 26, 2005
  3. Alex RiesenNov 29, 2005
  4. Josef WeidendorferNov 30, 2005

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.