On Wed, 19 Dec 2007, Dana How wrote: > On Dec 18, 2007 5:16 PM, Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx> wrote: >> On Tue, 18 Dec 2007, Dana How wrote: >> >>> The cases we are talking about are all subtrees of the working tree. >>> There is a useful cwd suffix. >> >> No. >> >> The cases we're talking of are *not* subtrees of the working tree. >> >> The SHA1 of a commit may well be a totally disjoint tree. Try it in the >> git repository with something like > > Agreed, but note you wrote *may*. > > I'd like to move some stuff currently in a p4 repository into git. > The directory structure within the repo is 13 levels deep; > I didn't design it nor can I change it. > > For the majority of the cases of interest to me git already accepts > relative paths. However, one thing people do often in p4 (or any SCM) > is look at (or compare, etc) specific revisions. Unfortunately, these are > not part of branches or commits, they are just file-specific revisions > (don't get me started on p4 "branches"). The equivalent in git is > to use a commit name (or a tag) and then name the file. The > basic commit:file syntax doesn't accept relative paths. I am not > specifically hung up on the commit:./path syntax; I just want some > notation that will get those 13 directories from $cwd instead of > making me type them again. Yes, sometimes that might not make > sense to request. [...] I think new feature like this should be postponed after 1.5.4 is out; we are now in feature freeze (only bugfixes are accepted). That said, does git-showrel solution proposed by Johannes Schindelin in Message-ID: <Pine.LNX.4.64.0712182250040.23902@xxxxxxxxxx> http://permalink.gmane.org/gmane.comp.version-control.git/68840 work for you? Below version of git-showrel script which uses proposed 'commit:./relpath' syntax (it could be improved, of course): cat > git-showrel <<\EOF #!/bin/sh rel=$(git rev-parse --show-prefix 2>/dev/null) git show $(echo "$@" | sed -e "s!:./!:${rel}!") EOF -- Jakub Narebski Poland - To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html