• 请不要在回答技术问题时复制粘贴 AI 生成的内容
newghost
V2EX  ›  程序员

各位公司用 SVN 的多还是用 GIT 做版本控制的多?

  •  1
     
  •   newghost ·
    newghost · May 11, 2018 · 24285 views
    This topic created in 3097 days ago, the information mentioned may be changed or developed.

    个人感觉不适合大团队,每个人都喜欢 commit 到本地,然后还要 merge 半天。

    每个人在本地 commit 一堆代码后,Git 的 merge 和 sync 都会变得很复杂,感觉还是提交一次,合并一次的 svn 操作比较简单,省时间。

    各位公司里都是用的什么呀?

    86 replies  •  2020-07-31 12:03:38 +08:00
    lommo
    lommo
    May 11, 2018
    1
    都有 git 多一些
    shintendo
    shintendo
    May 11, 2018❤️1
    2
    svn 主要优势是目录级权限控制吧
    TabGre
    TabGre
    May 11, 2018 via iPhone
    3
    分支没有利用上吧
    kikyous
    kikyous
    May 11, 2018 via Android
    4
    全 git
    nullcc
    nullcc
    May 11, 2018
    5
    已经 6 年没碰过 SVN,全是 GIT
    Linxing
    Linxing
    May 11, 2018 via iPhone
    6
    大福建地区 基本都是 SVN
    firedsxist0
    firedsxist0
    May 11, 2018
    7
    有用 SVN 有用 GIT 的,科室用 SVN,我自己用 GIT 管理自己本地代码
    lzhCoooder
    lzhCoooder
    May 11, 2018
    8
    上家用 svn 目前这家用 perforce .....
    nullcoder
    nullcoder
    May 11, 2018
    9
    请问,如果你 commit 一次 push 一次和 SVN 是否有区别?
    newghost
    newghost
    OP
    May 11, 2018
    10
    @nullcoder

    操作次数不一样呀。
    git 一般先 commit,再 push 吧?
    svn 直接 commit.
    newghost
    newghost
    OP
    May 11, 2018
    11
    @nullcc
    @firedsxist0

    我也发现用 git 的应该都用过 svn
    whypool
    whypool
    May 11, 2018
    12
    都在用
    chenyu0532
    chenyu0532
    May 11, 2018
    13
    我们小单位,用的 svn。
    SaKuLa
    SaKuLa
    May 11, 2018
    14
    @Linxing 不能用基本吧,我在厦门待过的公司都用 Git
    CoderGeek
    CoderGeek
    May 11, 2018
    15
    都有 新项目部分用 git~
    grantonzhuang
    grantonzhuang
    May 11, 2018 via Android
    16
    没有用过 svn,一直用 git,也只会 branch 和 stash 这几个,但觉得够用
    IMuMa3
    IMuMa3
    May 11, 2018
    17
    git 的优势在分支
    xiaxiaokang
    xiaxiaokang
    May 11, 2018
    18
    svn:文件(图片设计稿之类的)
    git:纯文本(如代码,文章)
    qloog
    qloog
    May 11, 2018
    19
    必须是 Git
    xlmo
    xlmo
    May 11, 2018
    20
    svn +1
    xomix
    xomix
    May 11, 2018
    21
    ……微软深度伙伴,TFS,真好用,服务端就直接光盘下一步,配合 sql server,自动生成网站,配合 ad 管理不要太赞。
    fcten
    fcten
    May 11, 2018
    22
    喜欢攒一堆 commit 不提交然后冲突了那不是自己的锅么。git 给了你选择,svn 不给你选择,你却觉得这是 git 的不对。
    想起以前在学校的时候用 svn,有一次服务器挂了之后代码仓库就完蛋了。只能建一个新仓库导入代码,旧的 commit 全部丢失,故障期间完全无法提交代码……
    zjsxwc
    zjsxwc
    May 11, 2018
    23
    也就上上家公司是 svn 的,其他公司都是毫无疑问 git,

    个人体会是 git 比 svn 方便,而且用的人多碰到的坑也容易解决,反而 svn 用的人少,尤其很多 svn 用户连命令行都不会用,碰到问题就歇菜了
    lazypu
    lazypu
    May 11, 2018
    24
    大福建地区 git 开发用, svn 产品用.
    iappled
    iappled
    May 11, 2018
    25
    全 git
    newtype0092
    newtype0092
    May 11, 2018
    26
    你喜欢 commit 完就 push 可以自己写个 alias 啊,想强制完全可以服务端 hook 不让一次 push 多个 commit 啊。用 git 肯定是因为喜欢 git 的方式,不喜欢为何不用 svn ?据我所知现在用 ftp 的也不是完全没有。。。
    cuzfinal
    cuzfinal
    May 11, 2018
    27
    上一家 TFS,现在 git
    hasbug
    hasbug
    May 11, 2018
    28
    喜欢 git svn 怎么说呢,公司用 svn,但····你们知道怎么搞的吗 全部项目被放到一个仓库里···这让我怎么搞某个项目的分支,反正我是不会用。
    pony279
    pony279
    May 11, 2018
    29
    > 个人感觉不适合大团队,每个人都喜欢 commit 到本地,然后还要 merge 半天。


    如果每次都需要手动 merge,很可能你们的代码结构有问题,导致大量同时修改同一个文件的情况

    多数情况是自动 merge 就可以了,如果嫌 log 里一堆分支 merge 难看,团队可以要求用 rebase 啊。
    815lbh
    815lbh
    May 11, 2018
    30
    经历三家公司,有 git, 有 svn。感觉 svn 更简单。
    ryd994
    ryd994
    May 11, 2018 via Android
    31
    把 git 当 SVN 用就是这个结果
    firedsxist0
    firedsxist0
    May 11, 2018
    32
    @newghost 我到新公司之前没用过 SVN,但我课经理一直用 SVN,so...
    Linxing
    Linxing
    May 11, 2018
    33
    @SaKuLa #14 那就大福州吧 待过的公司没有看到 Git 的
    carakan
    carakan
    May 11, 2018
    34
    vss svn....让我我受不了了....自己弄了一个 git..
    he583899772
    he583899772
    May 11, 2018
    35
    git
    Mutoo
    Mutoo
    May 11, 2018
    36
    手上有份远程工作,用的是 SVN,简直想死。后来用 git-svn 中转好多了。
    BearD01001
    BearD01001
    May 11, 2018
    37
    跳槽之后终于摆脱了 SVN 0.0
    chinvo
    chinvo
    May 11, 2018
    38
    git 的 branch 和 local commit 的优势就是你可以开个分支在自己本地随便改来回 revert,最后 rebase 一下 squash 一下 再 push 非常清爽。

    如果 merge 和 sync 变得一团乱麻一定是团队管理工作以及工作流标准化做的不够到位。
    murmur
    murmur
    May 11, 2018
    39
    svn 上手快客户端完备 小公司用很爽
    AntiGameZ
    AntiGameZ
    May 11, 2018
    40
    git 不适合大团队? LZ 怕不会是团队代码的更新都在 master 分支上做吧。

    建议可以回顾一下 Git Workflow,然后对照一下目前的工作流程,看看是否有可以调整的部分。如果是因为工具的问题,看看是否可以上新的工具或者购买对应的服务。

    参考: https://github.com/xirong/my-git/blob/master/git-workflow-tutorial.md
    Richman
    Richman
    May 11, 2018❤️1
    41
    2018 年了,还有那么多公司在用 svn 吗?真的超乎我的想象。
    moshao6
    moshao6
    May 11, 2018
    42
    我司还在使用
    newghost
    newghost
    OP
    May 11, 2018
    43
    @Richman
    @AntiGameZ

    git 上手确实慢,让那么多人都熟练掌握人力成本有点高吧,还是比较适合专业程序员用。
    inspoy
    inspoy
    May 11, 2018
    44
    自己在家用 git
    整个公司用的一个大的 svn 仓库,通过权限控制来分部门...

    话说 svn 的外链真(svn:externals)是好用,git 暂时没有看到替代方案
    jy02534655
    jy02534655
    May 11, 2018
    45
    Git Extensions 了解下,有中文翻译界面可视化,完全不输 svn。
    xuhaoyangx
    xuhaoyangx
    May 11, 2018
    46
    肯定 git。svn 每次 push 都要合并,反人类
    yogogo
    yogogo
    May 11, 2018
    47
    @SaKuLa 我在厦门可能待过假的公司_(:ェ 」∠)_
    qing0304
    qing0304
    May 11, 2018
    48
    git
    lsyAndroid
    lsyAndroid
    May 11, 2018 via Android
    49
    git,打分支打习惯了
    GeruzoniAnsasu
    GeruzoniAnsasu
    May 11, 2018❤️3
    50
    git 要严格控制分支

    哪个分支作为开发新 feature 的 fork 分支,哪个分支为某开发人员专有,什么时候 rebase,什么时候 merge

    都要有规定才行

    不然来个人非要做死从别人写一半的分支 fork,再 merge 旧版本,再给你 rebase 到 master,再 patch 到 dev,光看我描述你都觉得恐怖了

    svn 就倒是不会出现这种问题,svn 基本上只有往前滚的可能性,而且容易强制每个 commit 都是完整的 feature,但这种强制也容易拖慢同步进度,使得同步粒度变粗

    如果管理得当而且所有开发人员都很熟悉特性的情况下,git 还是很理想的,但“管理得当”就已经非常难了,“所有开发人员都很熟悉”对于某些传统一点的公司来说简直天方夜谭
    mritd
    mritd
    May 11, 2018 via iPhone
    51
    😂 容我好奇的问一下,用 svn ci 啥的怎么处理,还有 gitflow
    winglight2016
    winglight2016
    May 11, 2018
    52
    不要怀疑 git,觉得不好用一定是你不会用,相比 svn 已经是代际优势了
    wentaoliang
    wentaoliang
    May 11, 2018 via iPhone
    53
    git rebase 了解下?
    AlphaTr
    AlphaTr
    May 11, 2018
    54
    接触 git 以后再也用不回去 svn 了,用也是 git-svn 中转
    jin5354
    jin5354
    May 11, 2018
    55
    我进来看看有没有用 hg 的
    yylucifer
    yylucifer
    May 11, 2018
    56
    楼主的问题是你司的 git flow 没有做好。

    一个良好的 git flow 我觉得很优美。
    niklause
    niklause
    May 11, 2018
    57
    肯定是 git 啊
    pepesii
    pepesii
    May 12, 2018 via iPhone
    58
    我司在用 hg
    ymd
    ymd
    May 12, 2018
    59
    不客气的说 现在还用 svn 的公司 早点跳槽八
    cxbig
    cxbig
    May 12, 2018
    60
    Git 用了快 10 年了,早已不记得 SVN 怎么用了。
    bingwenshi
    bingwenshi
    May 12, 2018❤️1
    61
    都 2018 年了,竟然还有人问这问题


    @ymd 是的,还在用 svn 的公司,早点跳槽吧
    msg7086
    msg7086
    May 12, 2018❤️1
    62
    你不要因为整个团队的人连 Git 都不会用就说 Git 用起来不好吧。

    你觉得 Linux 内核开发团队算大团队吗?

    当然了,如果你们团队的人都不会用 Git,那是用 SVN 好。
    说不定 SVN 都用不溜,那还是打包 QQ 传档标日期得了。

    不要把软件工程师这个职位当成儿戏!
    findingpan
    findingpan
    May 12, 2018
    63
    Git 目前常用 hotfix, feature branch, pull request 做 code review 这些吧
    openplatform
    openplatform
    May 12, 2018
    64
    Linux Kernel 目前经过 25 年的发展,有 1500 万行代码,运行在无数设备上。

    这算大型项目么?
    northisland
    northisland
    May 12, 2018
    65
    都有在用,我们组用 svn ……

    反正我都用的不熟,体会不到该鄙视谁

    不晓得 git 怎么玩文件映射,目录权限;也不晓得 git 多用户 merge 是咋比 svn 好,

    求各位大佬科普
    geelaw
    geelaw
    May 12, 2018 via iPhone
    66
    我在很久以前的一家公司实习的时候用的 VSS,再之后的一家公司是 Git,再之后的研究机构是 SVN,再之后在微软的具体的项目是 Git (VSTS/VSO)。

    平时自己用的是 Git (GitHub, VSTS/VSO)。

    我没搞懂,SVN 是不是没有分支啊😪
    msg7086
    msg7086
    May 12, 2018
    67
    @geelaw 有,但是代价高到飞起,相当于 cp -r。
    jin5354
    jin5354
    May 12, 2018
    68
    @geelaw svn 的分支就是复制一份新的
    arawn
    arawn
    May 12, 2018
    69
    没用过 svn。呆过 3 家都是 git
    billchenchina
    billchenchina
    May 12, 2018 via Android
    70
    @mritd #51
    webhook 能做吧
    congeec
    congeec
    May 12, 2018 via iPhone
    71
    @lzhCoooder 代码很多呢?居然要上 p   4
    oongxx
    oongxx
    May 12, 2018
    72
    VSTS -> TFVC
    ChasYuan
    ChasYuan
    May 12, 2018 via Android
    73
    svn 做文档管理,开发用 git。
    waruqi
    waruqi
    May 12, 2018 via Android
    74
    git
    Mutoo
    Mutoo
    May 12, 2018
    75
    @inspoy git submodule 了解一下。
    cnbattle
    cnbattle
    May 12, 2018
    76
    svn 是啥? 没用过 (:狗头
    dyllanwli
    dyllanwli
    May 12, 2018
    77
    用 git flow 确实很麻烦
    iyangyuan
    iyangyuan
    May 12, 2018 via iPhone
    78
    svn
    ldehai
    ldehai
    May 12, 2018
    79
    有些公司自己搭服务器,习惯性 SVN,估计很多没听过还可以装 gitlab。
    其他不谈,如果没网络,svn 根本用不起来。git 完全没问题,也不会影响干活。
    用过 git 再也不会喜欢 svn 的。
    simple2025
    simple2025
    May 12, 2018
    80
    没网络你们居然能干活的?不 bing 的吗
    lightening
    lightening
    May 12, 2018
    81
    如果你 merge 经常有大量冲突,用 svn 也是一样啊,肯定埋头干半天发现提交不了。
    zpf124
    zpf124
    May 12, 2018
    82
    svn 虽然我个人很想在小部门里推 git,但大家觉得两者差距并不大,不愿意更换。
    simple2025
    simple2025
    May 12, 2018
    83
    @zpf124 本来没有多大区别,除非用了 gitlab,以及你项目非常大,svn 分支建起来太慢
    ckylolo
    ckylolo
    May 12, 2018
    84
    不是一个层级的东西,非要比计较的话,svn 过家家,git 才是团队协作和流程控制以及质量保证的利器。

    有兴趣可以了解下

    http://blog.jobbole.com/109466/
    merlin1001
    merlin1001
    May 18, 2018
    85
    git 和 svn 都用过,个人感觉小团队开发还是 git 更方便
    XisucksYi
    XisucksYi
    Jul 31, 2020
    86
    那只是你覺得複雜, git 有 local branch, remote branch, remote tracing branch. svn 呢?
    而且我很想知道下對於 MicroServices 開發, svn 怎麼做
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   1483 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 152ms · UTC 23:26 · PVG 07:26 · LAX 15:26 · JFK 18:26
    ♥ Do have faith in what you're doing.