Re: [PATCH] Commands requiring a work tree must not run in GIT_DIR
- From
Junio C Hamano <junkio@cox.net>
- Date
- Jan 24, 2007, 22:51 UTC
- Message-ID
- <7v7ivcf37p.fsf@assigned-by-dhcp.cox.net>
- In-Reply-To
- <Pine.LNX.4.63.0701241508510.22628@wbgn013.biozentrum.uni-wuerzburg.de>
Johannes Schindelin <Johannes.Schindelin@gmx.de> writes:
Show 8 quoted lines
>> I think "require_work_tree" reflects what we are trying to do >> much better than NOT_BARE. So maybe we should rename NOT_BARE >> to REQUIRE_WORK_TREE. > > Hm. Might make sense. > > But there is a subtle trap here: if a repo is not bare, it does have a > work tree. But what we want here actually is NOT_INSIDE_GIT_DIR:
I think we are saying the same thing: "require to be IN the working tree" (hence not in ".git/objects", for example).
> It is perfectly sensible to run git-pull from inside the git dir, since it > has to cd to the top _anyway_.
I would not call it "perfectly sensible". I never understood why anybody would want to cd to .git/ in a repository with an working tree while actually working on the files in the working tree (e.g. doing merges and pulls and edits and commits) [*1*]. I would say it is in the "allowing it is cheap and harmless so why not" category.
[*1*] But it's probably just me who almost always is in Emacs; switching to a shell terminal and saying "cd .git && vi config" is much more expensive than "^X^F .git/config").