![708688ff65055e7d7ee440c11b1a54f6.png](https://i-blog.csdnimg.cn/blog_migrate/3e0dde52db2e3dba56a35c1238156351.jpeg)
我们知道在当前的市场上主流的两种项目开发版本控制软件就是Git和SVN,那么这二者到底有什么区别呢?今天我就从二者的优缺点方面进行分析。
SVN
优点
- 管理方便,逻辑明确,符合一般人的逻辑规范
- 采用集中式的管理方式,可以保证代码的安全性及一致性
- 适合进行项目管理
缺点
- 对服务器造成的压力相对较大,在小项目中运行影响不大,一旦项目增大会影响服务器的使用性能
- 要求服务器网络质量好,SVN将所有代码都放在服务器端,再往下分发,则会造成网络出现问题时开发者无法提交代码及管理员无法管理项目的问题
- 由于集中式管理有非常明确的权限管理机制,而在开源项目中没有那么明确的权限配置,所以SVN不适合大规模的开源式开发
Git
优点
- 非常适合大规模、分布式开发,适合进行开源项目的开发
- 给服务器的压力非常小
- Git采用离线开发的模式,不要求服务器网络质量好,每个人都可以从远程仓库中将一整个项目下载下来进行开发
- 非常容易解决冲突
缺点
- 学习周期较长,SVN采用GUI界面开发符合操作习惯,而Git多采用命令行进行操作
- 不太符合常规思维,更符合程序思维
- 代码保密性较差,每个人都可以从远程仓库下载代码进行开发
实际上二者并无好坏之分,只是应用场景不同而已,就像潘长江不认识蔡徐坤也不能说他不好,只是关注点不同罢了
当对开发过程中的权限要求比较高,需要集中式管理时推荐使用SVN
当对代码的协作要求比较高时,选择Git自然更好
江山父老能容我,不使人间造孽钱,本人小白,文章中如有问题欢迎指教