• 企业中常用的Git和Svn比较。


        • 什么是Git
        Git是一款免费、开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。  Git的读音为/gɪt/。
         
        Git是一个开源的分布式版本控制系统,可以有效、高速的处理从很小到非常大的项目版本管理。 Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。
         
        • Git VS SVN
            1. Git 是分布式的,SVN 是集中式的

            2. Git 存储的是文件快照,SVN 记录的是文件修改处

            3. Git 没有全局的版本号,SVN 有全局版本号
        • 集中式 VS 分布式

            集中式:

            版本文件存储在中央服务器中,其工作方式是,首先从中央服务器上下载到工作目录,然后在工作目录进行修改,修改之后再提交至中央服务器。

            分布式:

            没有中央服务器,每个电脑都是一个版本库,工作时候不需要从中央服务器上更新下载,多人协助时候只需要将修改的文件相互推送,进行合并。

            对比:

            1. 分布式安全性更高。分布式不存在中央服务器,每个电脑都有完整的版本库,那么就不用担心中央服务器发生文件丢失,而集中式的中央服务器文件丢失比较麻烦。

            2. 分布式更为方便,不需要联网进行工作,而集中式的需要联网才可以将修改的文件推送到中央服务器中,如果文件较大,需要花费大量的时间在文件传输上。
        • 换个角度思考一直以来的争论(既然git这么好,为什么很多公司还在使用svn呢?)
             1.SVN的安全控制和权限管理更好。git 下,如果一个人clone以后,所有代码和历史都泄漏了。而 svn 有细致的按照目录级的权限控制,不开通对应目录的权限无
        法获取到目录下的内容。
             2.GUI工具,svn更加形象化,图形化界面处理更友好。
             3.git 有一定的学习成本,分布式的工作方式,需要转换思维方式
             4.有人总结成"管理用svn,代码用git
                  所以,不要再问"iphone手机那么好,为什么还有人用三星?"类似的问题, 合适的才是最好的。
  • 相关阅读:
    转换流--OutputStreamWriter类与InputStreamReader类
    Android getResources的作用和须要注意点
    sqlit使用要点之引入libsqlite3.dylib
    C语言文件操作之fgets()
    5款伊思儷超媒體繁体游戏 中文简体补丁
    memcpy的使用方法总结
    开发人员改变世界的初心
    expect
    HDU 1061 N^N (n的n次方的最后一位)
    linux杂谈(二十):apache服务配置
  • 原文地址:https://www.cnblogs.com/myinspire/p/7273539.html
Copyright © 2020-2023  润新知