Re: VCS comparison table
- From
Jakub Narebski <jnareb@gmail.com>
- Date
- Oct 16, 2006, 23:55 UTC
- Message-ID
- <200610170155.10536.jnareb@gmail.com>
- In-Reply-To
- <Pine.LNX.4.64.0610161625370.3962@g5.osdl.org>
Linus Torvalds wrote:
Show 17 quoted lines
>>> About "checkouts", i.e. working directories with repository elsewhere: >>> you can use GIT_DIR environmental variable or "git --git-dir" option, >>> or symlinks, and if Nguyen Thai Ngoc D proposal to have .gitdir/.git >>> "symref"-like file to point to repository passes, we can use that. >> >> It sounds like the .gitdir/.git proposal would give Git "checkouts", by >> our meaning of the term. > > Well, in the git world, it's really just one shared repository that has > separate branch-namespaces, and separate working trees (aka "checkouts"). > So yes, it probably matches what bazaar would call a checkout. > > Almost nobody seems to actually use it that way in git - it's mostly more > efficient to just have five different branches in the same working tree, > and switch between them. When you switch between branches in git, git only > rewrites the part of your working tree that actually changed, so switching > is extremely efficient even with a large repo.
Unless you have branch(es) with totally different contents, like git.git 'todo' branch.
> So there is seldom any real need or reason to actually have multiple > checkouts. But it certainly _works_.
But without .git being either symlink, or .git/.gitdir "symref"-link, you have to remember what to ser GIT_DIR to, or parameter for --git-dir option.
I'd like to mention once again that in Git branches and tags have totally separate namespace than repository namespace.
-- Jakub Narebski Poland