美文网首页
git和svn对比

git和svn对比

作者: 噜啦啦ya | 来源:发表于2018-06-10 22:33 被阅读0次

因为最近公司在更换源代码管理工具,所以在此对git和svn进行了对比

1.Git和SVN一样都有自己的集中式版本库或者服务器。每个开发者会从版本库或者服务器check out代码到本地,会在本地克隆一个和中心版本库一模一样的本地版本库,所以再也不用担心断网了没办法提交代码了。
2.克隆代码:git会比svn快很多(在svn上克隆UI的文件,花了10分钟,不知道是网络的导致还是怎么了)
3.对比历史版本:svn需要联网才能看到历史版本对比,git不需要,因为git在本地保存着当前项目的所有历史更新。如果需要看N个版本之前的代码对比,git会去取出N个版本之前的代码和当前的代码进行对比
4.提交代码:svn需要在联网的情况下才能提交代码,git不需要,git是先commit到本地仓库,然后在有网的时候再push到服务器
5.分支:👆上面的一些区别主要是在没有网络情况下git会比svn有优势,但是呢,在公司办公的话没有网络或者服务器断电的情况还是比较少的。来了解下git和svn最重要的区别:分支
在svn上:分支是一个完整的目录,而且这个目录拥有完整的实际文件。A开启了分支,Bupadate的时候也会拥有A一样的分支,如果A改坏了分支,那么B也就得重新切分支重新下载。
而且如果想知道是否合并了一个分支,需要手动运行像这样的命令svn propget svn:mergeinfo,来确认代码是否被合并。
git:在本地版本库可以切换想要的分支,只要不提交到主要的版本库,就不会影响到其他的伙伴。
举个🌰:1.0版本已经提交上线,主分支上建立分支A开发2.0的版本,突然1.0版本有生产问题,那么就可以切回到主分支,在主分支建立一个新的分支B,在B分支修复生产问题,等待测试通过,会到主分支,并将B分支合并过来,push到远程仓库。再切换到之前开发阶段的A分支,这样就可以保证开发进度不会受到影响。

实际上svn和git两个合并在提交到远程服务器上的操作是一样的,有冲突改冲突,没有冲突自动合并。git的便捷在于有本地仓库,轻松的建立分支,非常容易的切换分支,也不会影响到其他的伙伴。别人提交到主干的东西合并到自己的分支来。这样做的好处在于冲突不会太多,然后将自己改好的功能分支合并到主干。

git相对于svn的缺点:

1.学习成本:现在公司使用的代码管理工具是svn,所以如果切换到git还是需要一定的学习成本的
2.跨平台:查资料说对windows的用户不太友好,但是问过周边使用过git的用户,也有图形化使用工具,用法和svn差不多,具体如何还有待考证
3.对于技术来说,可能Git比较好用,但是对于其他的同事来说,使用git去管理文件体验不太好。咨询过周围的测试还有设计,都是使用svn。开发用git比较多。
4.权限管理:svn的权限管理相当严格,按照组、个人某个目录都有权限控制,git没有严格的权限管理,没有任何的保护机制。

总结:

1.站在个人的角度来说,比较喜欢用git,因为会很方便的管理代码,当有线上问题的时候,或者某一个版本未上线正在测试阶段,进行下一个版本的开发,会感觉很方便。
2.从公司的角度出发,建议使用svn,因为我们现在的项目并不多,同时迭代版本好像也不多,没有很高频次的协同合作,所以对于技术来说svn是够用的,当然不排除以后公司的快速发展是需要协同合作,多个迭代同时进行的。上面也提到过对于非技术人员来说git的用户体验不太好,但是具体如果还有待考察。

相关文章

  • 源代码管理_Git/SVN的对比

    一、Git和SVN的对比 简单对比: 速度:很多情况下,git的速度比SVN快很多;结构:SVN是集中式管理,Gi...

  • git和svn对比

    因为最近公司在更换源代码管理工具,所以在此对git和svn进行了对比 1.Git和SVN一样都有自己的集中式版本库...

  • Git和SVN对比

    Git比SVN相比有什么区别呢? 1.最核心的区别就是Git是分布式的,SVN是集中式的。SVN必须有一个服务器版...

  • 宝尊电商java面试分享(2020-2-20)

    1-3年的岗位 1、讲一个你觉得做得比较好的项目2、svn和git对比,git日常操作有哪些命令 git和svn对...

  • git - 分布式代系统管理工具-安装(1)

    git是时下非常流行的版控制系统 git 和 svn 的对比 下载gitgit官网地址: https://git...

  • git和svn常用命令对比

    下图是git和svn一些常用命令的对比图

  • Git 简单总结(一)

    简介 什么是git? git的起源 集中式 与 分布式 图解 git 和 svn 的简单对比 git 的工作流程 ...

  • git远程仓库

    关键字 git remote 参考 阮一峰:Git远程操作详解 横向对比 搜索git和svn的差别,可以发现都是说...

  • Git和SVN的对比

    Git与SVN对比 Git与SVN都是版本控制系统,版本控制是指对软件开发过程中各种程序代码、配置文件及说明文档等...

  • Git与github

    Git分布式版本控制工具 Git概述和基本使用 git分布式版本管理与svn(cvs)对比 类型:git是开源的分...

网友评论

      本文标题:git和svn对比

      本文链接:https://www.haomeiwen.com/subject/fiwqeftx.html