[LLVMdev] git Status Update?

Christophe de Dinechin christophe at taodyne.com
Sat Sep 3 15:46:41 PDT 2011


On 3 sept. 2011, at 14:06, Francois Pichet wrote:

> I am not very familiar with GIT so I have a question:
> Let's say I don't fork and I work 1 patch at the time. Then what are
> the advantages of GIT over svn?

No intent to start a flame war of any kind, but here is what I can come up with in two minutes based on my personal experience with both :

1. Speed. git diff r1 r2 works locally, svn diff r1 r2 talks to the server, more important for people far away from the servers.

2. git bisect to investigate regressions. That alone is worth a lot.

3. Ability to work in subteams and exchange patches efficiently before submitting the result to the larger community.

4. Ability to do commits at any time, no need for a network connection.

5. Ability to do "private" commits, e.g. your fix just works, but you realized there may be a better way, so you can save what you had and try something else.

6. Private branches / changes, e.g. added debug messages to help you understand this or that part of LLVM.

7. Confidence that the code you download from llvm.org has not been tampered with. kernel.org has recently been hacked, yet the Linux community knows there is no risk the Linux kernel code was changed, because *everybody* has an SHA1 hash of *every file* for *every version*.

8. A merge that (in my experience) is much smarter in hairy cases, e.g. detecting conflicts in subprojects.

9. Guaranteed continued access to the history of the project, even if llvm.org were to disappear (whether network glitch or asteroid)

10. Folks are switching from svn to git in droves, not the other way round.


Regards
Christophe

> 
> _______________________________________________
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev





More information about the llvm-dev mailing list