git与svn的比较

公司项目最近从svn更换到了git,不舍得那适应没多久的svn分支开发,但毕竟不排斥更好的工具。你们都说git比svn好用,虽然在我接触git与svn的时间内,我也下意识以为git好用,但真正运用到实际开发项目的也就只有svn,git只是独自一人拿来过家家而已,总算是有机会尝试比较一下了。git

 

svn图形操做有TortoiseSVN,而git图形操做有SourceTree,相比较来讲,TortoiseSVN老是要右键去提交更新查看,log也只是显示了提交状况,而SourceTree有一个完整的界面,提交合并状况也显示得很清晰明了,特别是分支的操做状况。不只如此,git还有简单强大的命令行,有大部分的人都会选择用git命令进行操做。相比之下,我想svn应该是没有几我的想去用svn的命令吧。印象里我接触过一次命令,而后接触了TortoiseSVN就再也没有使用过svn的命令了,由于图形操做更加便捷了。svn

 

git最强大之处在于它的分支管理,在本地你能够随意拉取分支,只要你喜欢,并且拉取的速度很快,它实际只是修改了一下指针。svn虽然也有分支管理,但它建立一条分支倒是先在远程上建立,而后你才能checkout到本地,实际就是复制了一份如出一辙的代码,项目大的话,checkout也得花点时间。实际上,git有几条分支在本身的电脑上都是保留着一个目录的代码,随着你切换分支,目录里的代码会相应进行改变。svn则是你有几条分支则本地电脑保存着几份项目的代码,偶尔可能找错代码。工具

 

在使用过TortoiseSVN以后切换到SourceTree不习惯的地方仍是有的,TortoiseSVN在项目的目录里的每个文件或文件夹都有提交或改动状况,已提交则显示一个绿色的勾勾,为提交显示红色的叉叉,还有冲突状况则显示橙色的感叹号。切换以后就再也看不到那些清晰明显的小图标了,一切都只能在SourceTree或命令行中查看,解决冲突时找起文件来也没有那么的方便。命令行

 

总的来讲,git仍是比较适合多人之间的协做开发,由于它那强大的分支管理和简单的命令。而svn适合项目人少的开发,分支不须要建立太多。SourceTree虽然直观,可是git命令更加高效,结合二者一块儿使用也是一个不错的选择。这篇文章不是来讲git有多好,svn有多很差的,单纯只是一个客观的比较。萝卜青菜各有所爱,选择适合本身项目的才是最好的。现在项目也慢慢地切换到了git,感谢svn对项目的支持,最后,向即将逝去的svn致敬。指针

相关文章
相关标签/搜索