Thread (5 messages) flat view 5 messages, 4 authors, 2016-06-15

Re: DWIM .git repository discovery

From: Nguyen Thai Ngoc Duy <hidden>
Date: 2016-06-15 22:54:52

On Thu, Sep 27, 2012 at 7:22 PM, Drew Northup [off-list ref] wrote:
quoted
quoted
I personally do not think it is _too_ bad to internally do

        (cd ../path/to/another/repo/path/to &&
         git log --patch file.c)
As long as the .git discovery and path rewriting can be done
automatically, that'd be nice. But..
I do not think that it should be the job of Git to guess how you would
like your paths recannonicalized. That is truly a pathway to insanity.
I believe we are doing that. We move cwd internally to top worktree,
so we rewrite (well, prefix) all paths.
quoted
Returned paths should always be relative to cwd (well except diff/log
which are prefixed by [ab]/). cd'ing internally like above makes it
more confusing imo. Take grep for example, I find it natural for "git
grep foo -- ../other/repo/bar/" to return "../other/repo/bar/foo.c
...".
In Junio's example it would be relative to the working directory—of
the subshell. Neither the shell nor Git is in a position to clean that
up much if at all.
That's implementation details.
quoted
Prefix currently does not take "../blah" form, but I see no reasons
why it can't/shouldn't. $(cwd) is most likely outside the other
project's working directory. An exception running from inside a
submodule and examining the parent repository.
Is hacking the master project code from inside of a submodule what
this is actually about?
Hacking, no. Examining, yes. And in my case, no submodules. It's gnome
projects where a bunch of libraries (in their own repositories) may be
needed for an application. I stay in the application directory but
from time to time I'll need to look outside in other repositories.
-- 
Duy
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help