aidevs
V2EX  ›  问与答

直接用了 git,但是 git svn 优缺点有哪些?很多人问我为什么不用 svn?

  •  
  •   aidevs · Jul 14, 2016 via iPhone · 7338 views
    This topic created in 3615 days ago, the information mentioned may be changed or developed.
    24 replies    2016-07-15 17:05:33 +08:00
    tracyone
        1
    tracyone  
       Jul 14, 2016 via iPhone
    为什么要用 svn
    1990andy
        2
    1990andy  
       Jul 14, 2016 via iPhone
    Svn 能干的 git 都能干,然后 git 的分布式…
    kiwi95
        3
    kiwi95  
       Jul 14, 2016 via Android
    月经,网上对比一大堆,自己用一段时间也能感觉出来差别
    fan123199
        4
    fan123199  
       Jul 14, 2016 via Android
    轻量,回退容易,分布式。
    harry890829
        5
    harry890829  
       Jul 14, 2016
    别逗了,我们组原来是用 svn 的,我进公司到现在开始忽悠领导把所有代码迁移到 git ,他前段时间和我说,领导之间正在讨论迁移代码的问题了
    depress
        6
    depress  
       Jul 14, 2016
    /t/208864
    给你一个当初讨论很热烈的帖,看看回复会对你有帮助。
    ytmsdy
        7
    ytmsdy  
       Jul 14, 2016
    一直觉得 svn 好用的路过。。。
    lianz
        8
    lianz  
       Jul 14, 2016
    svn merge 一下,然后再 git merge 一下,然后对比感受一下。
    为了这个 merge ,花大成本迁移也值了。
    tomczhen
        9
    tomczhen  
       Jul 14, 2016
    git 是分布式, svn 是集中式。 git 有本地提交, git 的分支功能完善, svn 只是用文件夹区分。
    对公司而言 svn 大多时候更好一些,集中式有利于权限控制,而 git 的权限控制得另外实现。
    一些项目管理配套的工具,对 svn 的支持比较久,所以相关资料很齐全, git 在这方面就差一些。

    版本控制的主要问题还是流程制定上面,很多项目还不至于因为非要用特定的版本控制系统才能解决问题。对于小公司或者非大型项目,需要考察版本控制之外的东西很多—— work flow 、项目管理集成、持续集成配套这些是否合适才能提高效率。
    9hills
        10
    9hills  
       Jul 14, 2016 via iPhone
    连守旧的我厂都抛弃 svn 了,可想而知。
    9hills
        11
    9hills  
       Jul 14, 2016 via iPhone
    @tomczhen 现在 git 的持续集成才是火爆的很,要看潮流。
    Lullaby
        12
    Lullaby  
       Jul 14, 2016
    分支才是 git 的灵魂
    crashX
        13
    crashX  
       Jul 14, 2016
    git 和 svn 就跟 iPhone 和诺基亚,完全是质变的产物。当然如果你们公司没那么高需求,诺基亚也能满足。
    learnshare
        14
    learnshare  
       Jul 14, 2016
    Git 更主流,这是第一个原因。
    shimanooo
        15
    shimanooo  
       Jul 14, 2016
    表示上手用 git 的人, N 次试图理解 svn 都以失败告终。
    honeycomb
        16
    honeycomb  
       Jul 14, 2016 via Android
    本事好的两个都能用而且会选择最适合的一个
    vus520
        17
    vus520  
       Jul 14, 2016
    用了 git 之后,才理解什么叫进化
    aussieweever
        18
    aussieweever  
       Jul 14, 2016 via Android
    早些年的 clearcase 什么的,理念都是一个产品或者一个 feature 一个分支,而 git 的分支更多意义上是针对每次不是太大的改动来创建的。还记得以前用 clearcase 的时候每次 merge 回主产品线都是痛不欲生
    hanxiV2EX
        19
    hanxiV2EX  
       Jul 14, 2016 via iPhone
    我厂还在 svn
    just4test
        20
    just4test  
       Jul 14, 2016 via Android
    git 未必适合所有场景。我的业务每次提交都有大文件变更,导致本地仓库越来越大,不得不清理。
    svn 在这种场景下,客户端不会保存所有历史版本,就没问题。
    just4test
        21
    just4test  
       Jul 14, 2016 via Android
    @9hills svn 也能持续集成。
    malkavia
        22
    malkavia  
       Jul 14, 2016
    本地分支 本地提交 好顶赞
    我在我厂不遗余力的推广 git ,之前做了次分享讲了一个半小时
    今天下午我部门老大又做了个分享讲了一个小时
    不过然并卵,另外部门的老大完全没有想用 git 的意思
    他们用 svn 的原因,估计主要是懒得学 git
    ThinkCat
        23
    ThinkCat  
       Jul 15, 2016
    如果单个项目很大,那么 git 就不爽了。每个人的机器上都会存一大份,还有各种历史记录。 svn 没这问题, svn 代码集中在了服务器端。我选 git 。
    JasonGao180
        24
    JasonGao180  
       Jul 15, 2016
    @ThinkCat git 在 checkout 的时候可以--depth=n 只获取历史 n 次版本的记录
    如果项目工程很大的话就用 submodule 拆分
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   2950 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 66ms · UTC 06:56 · PVG 14:56 · LAX 23:56 · JFK 02:56
    ♥ Do have faith in what you're doing.