Re: Problem: staging of an alternative repository
- From
Jonathan Nieder <jrnieder@gmail.com>
- Date
- Apr 30, 2014, 21:35 UTC
- Message-ID
- <20140430213545.GV9218@google.com>
- In-Reply-To
- <CAKpPgveXqraM4bXb499mJm5Ls+EinihfEJ6VgOFikC0_Qp8iTA@mail.gmail.com>
Hi Pavel,
Pasha Bolokhov wrote:
> It turns out Git treats the directory '.git' differently enough > from everything else. That may be ok,
Yeah, it's intended.
[...]
> if you supply a different repository base name, say, '.git_new', > by either setting GIT_DIR or using the '--git-dir' option, Git 'add' > will not make any exception for it and think of it as a new (weird) > directory.
Yep, a git repository metadata directory named .git_new is not special in any way and you can use "git add" to track it if you want (for example to add a testcase).
[...]
Show 5 quoted lines
> Now I know, the '--git-dir' option may usually be meant to use > when the repository is somewhere outside of the work tree, and such a > problem would not arise. And even if it is inside, sure enough, you > can add this '.git_new' to the ignores or excludes. But is this really > what you expect?
I think it's more that it never came up. Excluding the current $GIT_DIR from what "git add" can add (on top of the current rule of excluding all instances of ".git") seems like a sensible change, assuming it can be done without hurting the code too much. ;-)
But as you note, you are not using $GIT_DIR the way it was intended to be used.
Thanks and hope that helps, Jonathan