On Mon, Sep 24, 2012 at 8:16 PM, Johan Herland <johan@xxxxxxxxxxx> wrote: > On Mon, Sep 24, 2012 at 2:22 PM, Nguyen Thai Ngoc Duy <pclouds@xxxxxxxxx> wrote: >> On Mon, Sep 24, 2012 at 6:59 PM, Johan Herland <johan@xxxxxxxxxxx> wrote: >>> The following works in the git.git repo: >>> >>> $ cd t >>> $ git log -- /Documentation >>> [...] >>> >> >> What version? Mine (recent master) does not work >> >> ~/w/git/t $ ../git log -- /Documentation >> fatal: '/Documentation' is outside repository > > We initially found it on 1.7.9.5, and conrfirmed it on various 1.7.10 > versions. A bisect reveals that this behavior changed in > v1.7.11.5-35-gf4c21e8 (Michael Haggerty: real_path(): properly handle > nonexistent top-level paths). OK checking. I still don't know why it does not happen to me. Any special in gitdir/worktree setting? That commit is in master. > Does this mean that "git log -- /Documentation" never should have > worked in the first place (and was "fixed" by this commit), or that it > should work (but was broken by this commit)? I think that should mean Documentation at root. "git log -- `chdir ../Documentation;pwd`" works and that clearly conflicts with interpreting "/Documentation" as the directory at worktree's root. > In any case, what is the _preferred_ way to path-limit "git log" to > Documentation/RelNotes, when my cwd is t/? If you want worktree root no matter where you stand, use "git log -- :/Documentation/RelNotes". The idea is ":" starts some "magic" in path handling, but for now there is only ":/". Or if you don't like magic, `git rev-parse --git-dir` should give you worktree's root to start with. -- Duy -- 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