Re: [PATCH 8/8] gitk: show modified files with separate work tree
From: Junio C Hamano <hidden>
Date: 2016-06-15 22:51:01
Paul Mackerras [off-list ref] writes:
quoted
Why do git commands that need a work tree not work under .git?... Don't know, ask Junio. :)
Whatever the current behaviour is, I am reasonably sure that it is coming
more from "meh -- who cares such a case?" than "it should work like this
when you are in .git because of such and such reasons".
For example, what does it mean to be able to do this?
$ edit Makefile
$ git add Makefile
$ edit Makefile
$ cd .git
$ git grep frotz Makefile
Perhaps the last step needs to be
$ git grep frotz ../Makefile
instead, but a more important point is, how would that be useful?
If you have both GIT_DIR and GIT_WORK_TREE set up to point at the correct
places, I think it is sensible to make the above (the "../Makefile"
version, not the one without dot-dot) work as expected.
I suspect (but would not bother to dig the history myself to find out)
that "we require a working tree" semantics that in fact often means "we
require you to be in the working tree" was a misdesign that did not matter
that came from the days back when GIT_WORK_TREE was not either present or
not widely used. Now more people seem to be using GIT_WORK_TREE for some
reason, I don't have anything against a patch series that defines and
implements a more desirable behaviour clearly.
Thanks.