Subject: Re: RFC: git cat-file --follow-symlinks?

From: Andreas Schwab <[email-masked]>
Date: Thu, 30 Apr 2015 12:04:10 +0200

Jeff King <[email-masked]> writes:

>   4. Return the last object we could resolve, as I described. So
>      foo/bar/baz (with "../../../external" as its content) in this case.
>      When you resolve a name, you can ask for the context we discovered
>      along the way by traversing the tree. The mode is one example we've
>      already discussed, but the path name is another. So something like:
>
>        echo "HEAD^{resolve}:fleem" |
>        git cat-file --batch="%(objectname) %(size) %(intreepath)"
>
>      would show:
>
>        1234abcd 17 foo/bar/baz
>        ../../../external
>
>      And then the caller knows that the path is not relative to the
>      original "fleem", but rather to "foo/bar/baz".

Note that ".." will always follow the *physical* structure, so if
foo/bar/baz is walking over symbolic links, "../../.." may lead you to
somewhere else entirely.

Andreas.

-- 
Andreas Schwab, [email-masked]
GPG Key fingerprint = 58CA 54C7 6D53 942B 1756  01D3 44D5 214B 8276 4ED5
"And now for something completely different."