diff options
author | Eric Wong <normalperson@yhbt.net> | 2009-03-28 23:10:45 -0700 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2009-03-29 19:58:10 -0700 |
commit | b8fee3a3884b4a18c2f0b5313255dd180c44ab78 (patch) | |
tree | 38edbbfa750e546dd7e48219c0cbea3d449d185a /grep.c | |
parent | Merge branch 'maint-1.6.1' into maint (diff) | |
download | tgif-b8fee3a3884b4a18c2f0b5313255dd180c44ab78.tar.xz |
git-svn: fix ls-tree usage with dash-prefixed paths
To find the blob object name given a tree and pathname, we were
incorrectly calling "git ls-tree" with a "--" argument followed
by the pathname of the file we wanted to get.
git ls-tree <TREE> -- --dashed/path/name.c
Unlike many command-line interfaces, the "--" alone does not
symbolize the end of non-option arguments on the command-line.
ls-tree interprets the "--" as a prefix to match against, thus
the entire contents of the --dashed/* hierarchy would be
returned because the "--" matches "--dashed" and every path
under it.
Thanks to Anton Gyllenberg for pointing me toward the
Twisted repository as a real-world example of this case.
Signed-off-by: Eric Wong <normalperson@yhbt.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'grep.c')
0 files changed, 0 insertions, 0 deletions