教你如何选择Git与SVN

推荐选择方案:偏向美术或文件管理使用SVN,偏向开发使用git。二者也可以结合使用,不同工作环境使用不同的版本管理,发挥各自的优势。

======

作为一名资深的git与SVN的使用者和管理者,下面谈谈两种版本管理工具各自的优势与劣势,以帮助需要的人做出正确的选择。


管理模式

  • Git:分布式
  • SVN:集中式
    > 共同点:
  • Git 跟 SVN都有自己的集中式版本库或服务器。

>不同点:

  • Git 更倾向于被使用于分布式模式,也就是每个开发人员从中心版本库/服务器上克隆一个跟中心版本库一模一样的本地版本库。

分支

> 共同点:二者都可以创建分支、合并分支等操作。

>不同点:

  • 分支方式:git分支是基于某一版本克隆一个完整的版本;SVN分支可以选择版本中某一部分内容作为分支内容。
  • 本地文件路径:git的分支是通过版本管理来切换本地目录显示的版本(分支),同时只能查看/操作一个版本(分支)内容;SVN分支相当于在另一个目录选择性的做了一个备份,可以同时查看操作两个分支的内容。

文件操作与版本控制

> 相同点:对所有文件都有修改记录,可以查看对比还原之前的所有版本。

> 不同点:git偏向于整体项目的版本管理,SVN偏向于文件的版本管理;SVN可以还原单个文件到任一版本,git只能还原整体项目到任意版本。

服务端与客户端

git与SVN都可以在服务端做权限管理,git的服务端通常会附带问题管理功能。
客户端:二者均有GUI界面客户端,SVN客户端界面看起来相对古老,git有很多第三方GUI界面,界面更符合当下审美。

学习成本

git难于SVN,这点对推广影响非常大。

软件支持

侧重美术、文件管理的软件支持SVN较多,侧重开发的软件通常都会支持git。

git与SVN没有绝对的优势或劣势,只看哪个工具更适合。在个人学习或个人项目中,我通常会使用git,因为它有很多云端平台,方便文件存储,如github、码云等,并且可以使用其自带的问题管理系统;对于公司项目如开头所述,依项目定。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 136,303评论 19 139
  • 看到青椒计划四月份作业里北京师范大学教育学部副部长余胜泉的一句话“今天的教育和老师不生活在未来,未来的学生将...
    陕县1797李娅娟阅读 1,850评论 0 1
  • 梵羽珠宝选择做基于钻石的耳钉、手链等更加时尚的装饰品,梵星学基于大数据提供珠宝月度订购服务;珠宝壹佰从珠宝分级体系...
    三锦囊的猫阅读 3,177评论 0 0
  • 一放暑假,几个好友就迫不及待地来到五台山驼梁,消除一个学期的紧张,压抑心情。来到大自然尽情释放,自由撒欢。 瞧!我...
    zhmphouw阅读 1,378评论 0 1
  • 嘴上说着不在乎,但是内心还是紧张的关注。毕竟是我的第一届高三毕业生。甚至不敢开对公的手机,内心害怕面对结果。只能通...
    文刀雨兒阅读 1,351评论 0 0

友情链接更多精彩内容