内容会持续更新,有错误的地方欢迎指正,谢谢!
Git和SVN的介绍
Git 是目前世界上最先进的分布式版本控制系统。那么它就没有中央服务器,每个人的电脑就是一个完整的版本库,这样,工作的时候就不需要联网了,因为版本都是在自己的电脑上。既然每个人的电脑都有一个完整的版本库,那多个人如何协作呢?比如说自己在电脑上改了文件A,其他人也在电脑上改了文件A,这时,你们两之间只需把各自的修改推送给对方,就可以互相看到对方的修改了。
SVN 是集中式版本控制系统,版本库是集中放在中央服务器的,所有开发者在开始新一天的工作之前必须从服务器获取代码,然后进入自己的分支进行工作,把自己的分支合并到服务器主分支上并解决冲突,提交。所有的版本信息都放在服务器上。如果脱离了服务器,开发者基本上可以说是无法工作的。
适用场景
1.非纯技术开发公司更倾向于SVN,比如:游戏公司和广告公司。由于Git都是镜像,,如果有个美术传个100MB的psd, 不相关的人员也要去下载,很浪费流量和时间;相反,纯技术的公司,就用Git吧。
2.如果公司对数据安全很重视的话,更倾向于SVN。因为SVN的安全控制和权限管理更好,服务器公司统一控制管理,也不会每个人都拷贝一份。
但是SVN,虽然我没用过,但听说分支不好用,不过也有上述优点。其实,反正都是解决版本控制、合作开发等问题,能解决就可以了,殊路同归。