V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
dbfox
V2EX  ›  问与答

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

  •  
  •   dbfox · 2016-07-14 08:30:55 +08:00 via iPhone · 6685 次点击
    这是一个创建于 3085 天前的主题,其中的信息可能已经有所发展或是发生改变。
    24 条回复    2016-07-15 17:05:33 +08:00
    tracyone
        1
    tracyone  
       2016-07-14 08:36:16 +08:00 via iPhone
    为什么要用 svn
    1990andy
        2
    1990andy  
       2016-07-14 08:46:00 +08:00 via iPhone
    Svn 能干的 git 都能干,然后 git 的分布式…
    kiwi95
        3
    kiwi95  
       2016-07-14 08:47:26 +08:00 via Android
    月经,网上对比一大堆,自己用一段时间也能感觉出来差别
    fan123199
        4
    fan123199  
       2016-07-14 08:47:50 +08:00 via Android
    轻量,回退容易,分布式。
    harry890829
        5
    harry890829  
       2016-07-14 08:48:03 +08:00
    别逗了,我们组原来是用 svn 的,我进公司到现在开始忽悠领导把所有代码迁移到 git ,他前段时间和我说,领导之间正在讨论迁移代码的问题了
    depress
        6
    depress  
       2016-07-14 08:49:00 +08:00
    /t/208864
    给你一个当初讨论很热烈的帖,看看回复会对你有帮助。
    ytmsdy
        7
    ytmsdy  
       2016-07-14 08:49:39 +08:00
    一直觉得 svn 好用的路过。。。
    lianz
        8
    lianz  
       2016-07-14 08:49:49 +08:00
    svn merge 一下,然后再 git merge 一下,然后对比感受一下。
    为了这个 merge ,花大成本迁移也值了。
    tomczhen
        9
    tomczhen  
       2016-07-14 08:52:19 +08:00
    git 是分布式, svn 是集中式。 git 有本地提交, git 的分支功能完善, svn 只是用文件夹区分。
    对公司而言 svn 大多时候更好一些,集中式有利于权限控制,而 git 的权限控制得另外实现。
    一些项目管理配套的工具,对 svn 的支持比较久,所以相关资料很齐全, git 在这方面就差一些。

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