集中式和分布式版本控制系统的区别

    技术2023-06-05  89

    一、主要区别

            SVN和Git的最大区别在于版本库或者版本控制的位置在中央服务器还是本地电脑

    二、代表产品

    集中式:SVN 分布式:Git

    三、常见问题

    1. 断网的情况下都可以使用吗?

            如果是一家小公司,SVN服务器就在局域网内,SVN的确可以在断网情况下工作。但是对于中大型公司,SVN服务器一般是独立出来的,不在局域网内的,你完成计划的工作内容,需要提交做成一个版本,但是由于版本库是在中央服务器,于是你要等网络联通之后,才可以提交。因此对于SVN服务器不在局域网内的情况下,断网是不可以使用的。

            Git版本库在本地,在完成计划的工作内容后,不管是否联网,都不会影响在本地做成一个版本。

    2. 分布式版本管理系统也是把代码同步到某台机器,这样和集中式版本管理系统有何区别

            首先,在Git中是没有中央服务器的。中央服务器是集中式版本管理系统用来做版本控制的。Git的版本控制在本地,所以没有中央服务器一说。而Git要多人合作时,可以选择把自己修改的内容即某一版本,推给其他合作者,然后其他合作者将该版本合并到自己的修改里,然后在把自己合并后的新版推给其他合作者。这样10个人的团队,假设,每个人都把自己的修改推给其他人,共推了90次,耗时,耗带宽,不如统一规定把修改推给某台设备,这样只修要推10次。
    Processed: 0.020, SQL: 9