On 10/14/06, Jakub Narebski <jnareb@xxxxxxxxx> wrote:
Jon Smirl wrote: > It refers to this comparison chart between source control systems. > http://bazaar-vcs.org/RcsComparisons It is quite obvious that comparison of programs of given type (SMC) on some program site (Bazaar-NG) is usually biased towards said program, perhaps unconsciously: by emphasizing the features which were important for developers of said program. > Does it accurately reflect the current status of git? Is their > assessment of git's rename capability correct? For example simple namespace for git: you can use shortened sha1 (even to only 6 characters, although usually 8 are used), you can use tags, you can use ref^m~n syntax. I'm not sure about "No" in "Supports Repository". Git supports multiple branches in one repository, and what's better supports development using multiple branches, but cannot for example do a diff or a cherry-pick between repositories (well, you can use git-format-patch/git-am to cherry-pick changes between repositories...). 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.
I believe they mean checking out only the latest few revisions instead of copying the whole repo. This issue is a problem for Mozilla. If you want to change a line in the git version you have to download the entire 500MB tree with full history.
Partial checkouts are only partially supported as of now; it means you have to do some lowe level stuff to do partial checkout, and be carefull when comitting. BTW it depends what you mean by partial checkout, but they are somewhat incompatibile with atomic commits to snapshot based repository.
I believe partial checkout means being able to check one directory tree out of the repo and work on it while ignoring what is happening in the rest of the repo. This is another issue for Mozilla which has multiple dependent projects checked into a single repo.
Git supports renames in its own way; it doesn't use file ids, nor remember renames (the new "note" header for use e.g. by porcelains didn't pass if I remember correctly). But it does *detect* moving _contents_, and even *copying* _contents_ when requested. And of course it detect renames in merges. Git doesn't have some "plugin framework", but because it has many "plumbing" commands, it is easy to add new commands, and also new merge strategies, using shell scripts, Perl, Python and of course C. So the answer would be "Somewhat", as git has plugable merge strategies, or even "Yes" at it is easy to add new git command. > They want changes via IRC. "Please discuss changes to this table on > the freenode IRC network channel #bzr, or on the mailing list." Gaah, subscribe-to-post mailing list!
It is annoying, but subscribe with the no delivery option.
-- Jakub Narebski Warsaw, Poland ShadeHawk on #git
-- Jon Smirl jonsmirl@xxxxxxxxx - To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html