Git VS SVN

个人使用历程是: Beyond Compare(为了推广,暂且算版本管理吧) -> VSS -> svn -> git,用过Git之后,就很少用SVN了,网上也有很多关于svn和Git的评论,一千个读者就有一千个哈姆雷特啊:)

为什么我们要放弃Subversion

GIT和SVN之间的五个基本区别(评论也很精彩)

CVS, subversion, hg, git 版本控制系统的选择之路

Subversion 用户眼中的 Git

What does SVN do better than Git

本文也只是从我的角度看

  1. 从历史的角度看

    cvs -> svn -> git

    Google Code(已关闭)也支持Git了,SourceForge也支持Git,当然还有最流行的GitHub和开源中国。

  2. 离线功能

    这点是喜欢Git的人经常提的,不喜欢Git的人又很鄙视的。我说下我的感受。

    1) 有段时间,经常出差,出差空闲时间,难免会修改代码,创建分支……而在写代码的过程中,又总有一种冲动,想把一个好不容易实现的功能版本管理一下,然而,有些时候,在现场或者其他地方不一定有网络,此时,SVN基本没法用。

    2) 经常写些小工具,或者学习,也经常需要版本管理,此时更多的是想自己拥有,而不是share,git在本机就可以做版本管理,无需向管理员申请开个repo。如果有一天,这些代码需要分享,只需要git push --mirror即可,或者请管理员把文件直接拷贝至服务器相应目录即可。

  3. 网速

    如果贵司的网络经常抽风的话,Git绝对是个好工具。Android源码就是用Git管理的,如果用SVN,想想国内这网速,你会疯掉的。

  4. 服务器宕机后的恢复

    这时,项目组每一个成员本地的版本库都可以用来恢复。

  5. Git svn命令

    对于常用的功能,pull,push,rebase,merge,分支等,Git都可以很好的兼容SVN。

你可能感兴趣的:(SVN,git)