svn 分支_GIT和SVN相比有哪些优势?如何在团队内部推行GIT?
相信有不少开发的同学遇到过这些问题:1、自己正在使用git,想推荐其他人使用git却说不出所以然2、当有人问“svn很简单很好用,为什么要用复杂的git?“你没法有理有据的说服他。今天我们就来理一理git相比svn有哪些优势吧。SVN的优势1、功能简单、常规操作就是提交和更新,团队使用推广成本低2、版本号严格要求递增,很容易进行版本比较。GIT的优势1、git比svn性能更好,使用更流畅2、git
相信有不少开发的同学遇到过这些问题:
1、自己正在使用git,想推荐其他人使用git却说不出所以然
2、当有人问“svn很简单很好用,为什么要用复杂的git?“你没法有理有据的说服他。
今天我们就来理一理git相比svn有哪些优势吧。
SVN的优势
1、功能简单、常规操作就是提交和更新,团队使用推广成本低
2、版本号严格要求递增,很容易进行版本比较。
GIT的优势
1、git比svn性能更好,使用更流畅
2、git是基于分布式的设计,去中心化的,这能保障在中央git仓库无法访问的情况下,其他终端的仓库有完整的仓库文件,不受影响,并且任何终端都随时可以将自己变成中央仓库。
3、基于第二点的分布式设计,你可以在本地随意操作版本,git commit 只是提交到本地,不会污染中央仓库,而svn commit 就直接提到到理中央仓库。
4、git有更优秀的分支管理,你可以快速的在几十个分支间流畅切换,但SVN每个分支都是一个copy副本,这带来文件系统的负担。
5、github 等社区的火热,推动理git的生态发展,如果你想要获得一个优秀的”轮子“这需git clone。
6、在大型研发项目中,git的分支管理能有效的配合迭代任务计划,确保项目的不同版本能得到有效的管理。
7、svn 项目可以很方便的迁移为git项目。
如何在团队内部推行GIT?
如果你想在团队内部推行git,这不仅仅要求你对git本身非常熟悉。还需要你能做到以下几点:
1、知识传播
可以进行2-3次,每次30分支左右的,团队内部git使用培训。
后期这个还需要在研发会议中,进行不断对技术细节加强。因为在git使用过程中,肯定会有团队成员犯错,比如覆盖理代码,误删除了分支等。
2、总结问题
理论上git可以解决项目研发中的版本控制所有问题,但还是会遇到一些需要讨论的问题,比如某个版本需要切分为多个git分支进行并行开发,分支如何进行统一规范标准化命名。
不同的分支在什么时候进行合并,这些都有在实际研发中不断总结和实践,知道做出一套符合项目实际情况的管理规范。
3、关键先生授权
一项技术的推动,单靠热情是无法在企业内部实施的,需要找到”关键先生“,他可能是你的直属领导或老板,你要说服他们使用git的理由,带来的收益,让他们从行政成名给于支持和肯定。
4、AB测试、小范围试点
可以做小范围项目试点,不用以下对技术变革全面铺开,即便你的团队再小,一次性铺开将承受很大的压力。所以最好方法是找一个合适的小的项目,进行小范围的试点1-2个月,进行观察和问题跟踪,后期再逐步铺开。
5、建立标准和规范
上面4点完成后,最后还需建立标准化流程和规范。这也有助团队协作效率提升。比如新来一个开发人员,你不需要单独告诉他如何写git commit message ,他只需要看文档就知道应该如何写。所有的协作都有文档规范指引,没有按照规范做的成员就是在犯规。
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
所有评论(0)