V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
york1996
V2EX  ›  程序员

面试的时候遇到公司介绍说自己是用 svn 来做版本管理,是否会觉得他们的技术栈比较老旧?

  •  
  •   york1996 · 2018-06-19 20:17:09 +08:00 · 17841 次点击
    这是一个创建于 2382 天前的主题,其中的信息可能已经有所发展或是发生改变。

    遇到的一些公司就是使用 svn 来做版本管理,而放弃了 git,考虑到很多综合原因,比如公司历史比较深远,在迁移方面会花很多成本等原因,大家怎么看见这件事情呢?

    第 1 条附言  ·  2018-06-21 12:44:29 +08:00
    头疼,看了你们的回复,你们要审好题啊,svn 只是一个工具,里面的技术栈没有深入了解的话就不要谈老旧,我提出这个问题,实际上是很多人的惯性思维,觉得老的技术就是没有新的技术能装逼,总觉得要去追求最新的技术栈才能显示自己的与时俱进,但是不要忽略了一个点,存在即合理!存在即合理!存在即合理!
    166 条回复    2018-06-23 16:55:47 +08:00
    1  2  
    susecjh
        1
    susecjh  
       2018-06-19 20:22:29 +08:00
    不会
    yanaraika
        2
    yanaraika  
       2018-06-19 20:25:20 +08:00 via Android   ❤️ 5
    是的 基本都是招进去的人不行
    thread2
        3
    thread2  
       2018-06-19 20:27:55 +08:00 via Android
    有新项目,有机会,就推行使用 Git,后面的同事会感谢你的
    zythum
        4
    zythum  
       2018-06-19 20:30:01 +08:00
    svn 挺好的啊。没啥问题啊 ... git 不就是分布式比较适合开源社区么。
    CFO
        5
    CFO  
       2018-06-19 20:31:30 +08:00 via Android
    估计他们还在用 jdk6 python2 因为稳定
    toublemaker
        6
    toublemaker  
       2018-06-19 20:33:06 +08:00
    还是去用 git 的吧,用 svn 的人思想比较保守
    Patrick95
        7
    Patrick95  
       2018-06-19 20:35:25 +08:00
    会啊,这是实话啊。
    shijingshijing
        8
    shijingshijing  
       2018-06-19 20:43:35 +08:00   ❤️ 27
    我要是告诉你用 svn 的公司很大概率不用加班不用出差你会怎么想?
    york1996
        9
    york1996  
    OP
       2018-06-19 20:52:27 +08:00
    @yanaraika 招进去的人不行是啥意思?
    york1996
        10
    york1996  
    OP
       2018-06-19 20:53:23 +08:00
    @shijingshijing 老哥过来人?
    huclengyue
        11
    huclengyue  
       2018-06-19 20:58:54 +08:00 via Android   ❤️ 21
    就是一个版本管理工具而已。。为什么要有优越感,而且大部分人也是把 git 当作 svn 用
    mritd
        12
    mritd  
       2018-06-19 21:00:44 +08:00 via iPhone
    那怕是 CI/CD 都没有 😆
    mritd
        13
    mritd  
       2018-06-19 21:01:46 +08:00 via iPhone
    Gitflow 这种东西更是不可能的,说不定还 scp 部署哦😆
    thread2
        14
    thread2  
       2018-06-19 21:08:12 +08:00 via Android   ❤️ 1
    @huclengyue 工具改变思维方式,提高生产效率
    mritd
        15
    mritd  
       2018-06-19 21:08:14 +08:00 via iPhone
    其实,很多时候,你不试试永远感觉不到,android 刚出来,我用塞班,我感觉都是个系统么,没啥; 推 git 时候我也在用 svn,也感觉只是个版本工具,直到后面 Gitflow 各种 CI 集成🙃
    zjsxwc
        16
    zjsxwc  
       2018-06-19 21:10:16 +08:00 via iPhone   ❤️ 4
    是的我会这么认为,用 svn 代表着 code review 等等协作上的简陋,员工不思进取。但换句话说,用 svn 代表这个公司安逸,活少,不用应对复杂的协作方式,开发任务也少。

    感受下,我上上个公司用 git 时 80 多个程序员同时维护一个项目,协作很方便;以及我上一家公司 5 个程序员一起维护项目就各种合并代码坑爹。
    zynlp
        17
    zynlp  
       2018-06-19 21:11:18 +08:00 via iPhone
    我司还在用 2002 年代码做核心代码,感觉良好
    visonme
        18
    visonme  
       2018-06-19 21:13:41 +08:00
    用那个很大程度都是技术主管说的,所以跟技术栈新旧没太大的关系,如果能推行 git 当然是好的
    shintendo
        19
    shintendo  
       2018-06-19 21:24:16 +08:00
    可能是出于权限控制的需要
    crayygy
        20
    crayygy  
       2018-06-19 21:33:04 +08:00 via iPhone   ❤️ 5
    我们平时维护着四个平台加底层的代码,CI,code review,一样不缺,楼上那些莫名其妙的优越感怎么来的有点搞不懂。
    虽然我承认我自己更喜欢 Git,也一直努力在向上面推荐有机会转 Git,但实在看不懂楼上的说法
    crayygy
        21
    crayygy  
       2018-06-19 21:34:09 +08:00 via iPhone
    @crayygy 补充一下,我们客户端这边加在一起一百多号人,最多的时候同时维护三四个分支。
    wuyouchao
        22
    wuyouchao  
       2018-06-19 21:39:50 +08:00
    @shijingshijing 你肯定没了结果鹅厂
    murmur
        23
    murmur  
       2018-06-19 21:40:03 +08:00
    git 适合那种几个人远在天边的人协作
    solaro
        24
    solaro  
       2018-06-19 21:41:40 +08:00   ❤️ 2
    笑话,你可知道国内主流 ERP 厂商,至今在公司、部门层面还在用 CVS ?你没听错,就比 SVN 还 low 一点的那个。。
    chinuno
        25
    chinuno  
       2018-06-19 21:44:35 +08:00 via Android
    就是个版本控制,用什么感觉都一样
    反正都用 git 提交 SVN (
    sinxccc
        26
    sinxccc  
       2018-06-19 21:46:27 +08:00   ❤️ 4
    FreeBSD 和 Webkit 的代码在 SVN 上,OpenBSD 的代码在 CVS 上。So?
    zhtttyecho
        27
    zhtttyecho  
       2018-06-19 21:48:37 +08:00
    我们用的 svn,因为电脑只能上内网
    c9
        28
    c9  
       2018-06-19 21:49:26 +08:00   ❤️ 1
    我他娘的是在逛知乎?
    thread2
        29
    thread2  
       2018-06-19 21:50:27 +08:00 via Android
    @sinxccc 不错,支持 SVN/CVS
    shijingshijing
        30
    shijingshijing  
       2018-06-19 22:04:53 +08:00
    @wuyouchao [很!大!概!率!] 同学注意审题(敲黑板)~ 下次碰到的可能是一道送命题。。。
    yangqi
        31
    yangqi  
       2018-06-19 22:09:55 +08:00   ❤️ 2
    就是个工具而已,流行的未必是最适合的。不了解就觉得人家老旧说明你太肤浅了。
    artandlol
        32
    artandlol  
       2018-06-19 22:13:40 +08:00 via iPhone
    领导说了算,也比较好维护 gitlab 一故障 mmp
    v1hu
        33
    v1hu  
       2018-06-19 22:27:44 +08:00
    不会,适合最重要。
    heynumber
        34
    heynumber  
       2018-06-19 22:30:56 +08:00
    @c9 我也觉得,这个问题太 low 了。
    leido
        35
    leido  
       2018-06-19 22:30:59 +08:00 via Android
    我们公司还在用 VSS 怎么办
    guoyuchuan
        36
    guoyuchuan  
       2018-06-19 22:35:17 +08:00
    不会,感觉也会的样子
    jmc891205
        37
    jmc891205  
       2018-06-19 22:43:07 +08:00
    用 Perforce 的飘过
    undertonememorie
        38
    undertonememorie  
       2018-06-19 22:53:53 +08:00   ❤️ 1
    svn 的小伙伴们,是不是用日期命名文件夹做版本标注的?我就笑笑
    messyidea
        39
    messyidea  
       2018-06-19 22:58:45 +08:00
    鹅厂现在很多项目还是用着 svn
    hyyou2010
        40
    hyyou2010  
       2018-06-19 23:00:06 +08:00
    你就说公司用 svn,但是你懂 git
    likuku
        41
    likuku  
       2018-06-19 23:06:36 +08:00
    薪资高?不加班?节假日多?福利多?这些才是关键吧。
    whoisghost
        42
    whoisghost  
       2018-06-19 23:17:17 +08:00   ❤️ 1
    @shijingshijing 这老哥说得是对的,新技术用得越多,就说明项目是新的,有业务压力,那么加班几率越大;技术越老,就说明业务差不多稳定了,公司收入也比较稳定了,那么加班几率就很小了。
    spadger
        43
    spadger  
       2018-06-19 23:50:22 +08:00 via Android
    同时用 svn 和 git 的飘过。不知道用 git 的优越感哪里来的。
    abcbuzhiming
        44
    abcbuzhiming  
       2018-06-19 23:51:12 +08:00   ❤️ 1
    用个版本管理工具也能装逼了?用 svn 和用 git 能显出水平来?
    Leigg
        45
    Leigg  
       2018-06-19 23:57:56 +08:00 via iPhone
    只是一个工具而已,年轻人。
    huclengyue
        46
    huclengyue  
       2018-06-20 01:12:03 +08:00 via Android
    @thread2 然而现实是或者说大部分公司团队是吧 git 当作 svn 在使用,对于他们来说 svn git 根本没区别。根本没有使用到 git 的特性。
    1024MB
        47
    1024MB  
       2018-06-20 01:26:22 +08:00 via Android
    我认识一个老哥,用汇编写软件的人,我认为他的技术栈比较老旧。你应该去考虑俩件事,1.如何去了解你面试的公司,你只是面试人,非资深员工,你没有权利说这公司的好坏 2.是否留下,如果留下,了解公司后,仍觉得使用 git 更好,如何说服公司更换。值得说的一点是,不值你一人知道 git 与 svn 的区别
    huntzhan
        48
    huntzhan  
       2018-06-20 02:29:42 +08:00
    一般这种公司,技术都不是核心竞争力,稳定剩余一切。所以你看着办就好。
    mxmotao
        49
    mxmotao  
       2018-06-20 07:18:40 +08:00 via Android
    还有很多行业软件只支持 svn,大概这也是不切换到 git 的一个理由吧
    bwangel
        50
    bwangel  
       2018-06-20 07:39:30 +08:00
    @huntzhan 大佬是说鹅厂吗?这两天看到各种跟风带节奏说鹅厂技术不行,吃瓜群众想了解了解细节?
    webjin1
        51
    webjin1  
       2018-06-20 08:16:47 +08:00 via Android
    我猜 svn 这个项目本身就在 git 上开发?
    TabGre
        52
    TabGre  
       2018-06-20 08:18:00 +08:00 via iPhone
    假如反过来会不会怎么样?
    wezzard
        53
    wezzard  
       2018-06-20 08:28:08 +08:00
    SVN 有一個特點就是中央服務器不能下線,結合這點想想。
    zhouyut001
        54
    zhouyut001  
       2018-06-20 08:28:44 +08:00 via Android
    看见这个问题我 TM 出去就看了下,怎么不是 B 乎? svn 和 git 都是个工具而已,还真用处了个优越感。对于公司来说,svn 保守,用的就是个稳,用楼上老哥的话来说就加班少,没啥新项目,压力不大。旧不旧不是问题,适合才是真的。楼主直接都不出声了,赶快出来挨骂
    corningsun
        55
    corningsun  
       2018-06-20 08:49:01 +08:00
    @zhtttyecho #27 因为只能内网所以 svn ? 你们公司难道没有 gitlab ?
    yulitian888
        56
    yulitian888  
       2018-06-20 08:49:25 +08:00
    我只能说:???????????????????????
    jinyu121
        57
    jinyu121  
       2018-06-20 09:13:52 +08:00
    你们公司有 TFS 么?就是 VS 里面带的那个团队协作工具 TFS ?

    一句话吐槽:独占式签出。

    推荐感受一下这个东西。
    SakuraKuma
        58
    SakuraKuma  
       2018-06-20 09:19:35 +08:00
    呜哇,看见#38,终于知道有些人 git 的优越感哪来了的,svn 都不熟悉就直接开黑了。
    zh5e
        59
    zh5e  
       2018-06-20 09:21:10 +08:00
    1.版本库在环境 a
    2.安全要求很高的开发环境,访问不了 a
    3.多个类似 2 的开发环境

    请问这样开发环境,svn 怎么做代码管理?

    用 git 是可以的

    -----------------------
    gitlab 挂了,不能恢复?没关系,代码都在磁盘上呢,丢不掉,大不了账户信息没了,用 ssh 协议秒恢复,gitlab 环境慢慢折腾。

    svn 挂了不能恢复,该怎么搞?

    []( https://www.v2ex.com/t/178701)
    dbpe
        60
    dbpe  
       2018-06-20 09:23:12 +08:00
    git 源代码 svn 二进制

    有机会我肯定会推 git。。。

    code review 不存在的。。自动部署?不存在的。。
    Web Hook 不存在的。。
    dbpe
        61
    dbpe  
       2018-06-20 09:25:32 +08:00
    gitlab 占资源? gitea gogs 了解下。。
    nullcoder
        62
    nullcoder  
       2018-06-20 09:28:46 +08:00
    @shijingshijing #8 你想多了,大概率不会给你配笔记本是真的
    jennifertxwoodma
        63
    jennifertxwoodma  
       2018-06-20 09:29:28 +08:00
    用 svn 至少说明 low
    zlkent
        64
    zlkent  
       2018-06-20 09:34:26 +08:00
    刚进公司的时候,公司代码都用 svn 管理。等慢慢我接手团队后,开始给开发搭了一个 git 环境,结果没人用(我只是个产品)....
    没错,就如 @shijingshijing #8 说的,我们公司基本不加班....
    arthas2234
        65
    arthas2234  
       2018-06-20 09:40:06 +08:00
    这个问题,感觉比问哪种语言更牛逼还更无聊。。。。
    tianjusanren
        66
    tianjusanren  
       2018-06-20 09:40:22 +08:00
    作为运维来说,真心没感觉 svn 和 git 在实际业务环境上的差别,对于我们来说,是越简单越好。使用 git 带来的副作用是各种使用问题,各种维护问题。

    在一些自己的小项目上也用 git,主要原因有两个,一个是学习新技术,一个是 git 的 web 管理确实做的好。
    但是对每天使用各种 IDE 工具的开发人员来说,用不用 web,应该没什么区别吧?


    @zh5e svn 挂了不能回复? 这个是的运维人员失职,日常备份没有? svn 主备没有?
    至于开发、测试、生成环境的隔离,这个貌似跟代码管理软件没关系吧
    andrewhxism
        67
    andrewhxism  
       2018-06-20 09:43:53 +08:00
    哈哈,你可知道电脑端 QQ 使用的是 VSS
    Deeer
        68
    Deeer  
       2018-06-20 09:44:26 +08:00 via iPhone
    我的经验是、所有的技术都是服务于人,技术有多老、能持续稳定服务于人就好
    whypool
        69
    whypool  
       2018-06-20 09:45:08 +08:00
    同时用 git 和 svn,话说用个 git 都能有优越感?说得好像 git 是自己写的一样
    xpresslink
        70
    xpresslink  
       2018-06-20 09:45:23 +08:00
    svn 和 git 我都在用,而且 SVN 服务器,Gitlab 也是我自己搭建的。最省事的方案是弄个群晖的 NAS 装个套件就可以了。

    并不能说 git 就比 SVN 高大上,svn 就 lowbility,只是场景优势不同。
    在纯写代码开发的团队里面做项目肯定用 git 方便。
    项目中有美工人员参与有大量图片视频之类的资源文件,或要集中控制代码访问权限时用 svn 方便。

    总体来说都只是一个工具,对于程序员来说上手都很容易,最多做个培训 1 个小时就能用了。
    在这件事上都存在优越感?
    queuey
        71
    queuey  
       2018-06-20 09:45:41 +08:00
    我们公司用什么取决于运维给什么,曾经提过用 Git 结果被反问 Git 是什么❓
    曾经在华为做乙方用了半年多的 CVS
    DnC
        72
    DnC  
       2018-06-20 09:45:55 +08:00
    我现在就在公司推行用 git 管理代码,用 svn 管理文档(主要是 share,和低频次的更新),挺好的呀,没毛病。
    mritd
        73
    mritd  
       2018-06-20 09:48:18 +08:00 via iPhone
    @tianjusanren CI 集成 svn 你很难做,比如多分支切换部署
    mikulch
        74
    mikulch  
       2018-06-20 09:50:14 +08:00   ❤️ 1
    @tianjusanren git 的优势在于大量需求的并行开发。
    比如我们现在团队 10 个人左右,进行快速迭代的模式开发。
    同一时间大概会有 7-8 个需求在同时进行开发,并且上线的时间不尽相同。这期间还可能会出现 hotfix 的紧急修正。这样的话,就可能会出现同时拉取多个分支,并且在多个不同的分支之间切换的工作。

    因为我们的项目很大,svn 的话每次拉取会耗费较长的时间。因为 svn 的分支是复制整个工作目录的内容到另外的分支中。git 的话分支切换是切换的指针指向的快照。所以拉取的分支速度比较快。
    tianjusanren
        75
    tianjusanren  
       2018-06-20 09:53:16 +08:00
    @mritd svn 的分支也很完善啊,可以建 branch,tag。
    我们的开发环境,每个员工自己维护一个自己的分支,使用 jenkins 部署,谁需要使用这个环境的时候,就用 jenkins 把自己的分支代码部署上去,用的也很好。

    生产环境的多分支部署确实没有做过,可能是我们生产环境比较简单吧
    A555
        76
    A555  
       2018-06-20 09:54:15 +08:00
    整个公司质管部管者的,不是说换就换的
    xifan718
        77
    xifan718  
       2018-06-20 09:54:23 +08:00
    同时用 git 和 svn,话说用个 git 都能有优越感? SB
    sagaxu
        78
    sagaxu  
       2018-06-20 09:55:09 +08:00 via Android
    当然会觉得他们技术老旧,对公司印象也会减分,但是这都是小事,svn 和 git 的区别,并不会成为个人或公司的核心竞争力。
    mritd
        79
    mritd  
       2018-06-20 09:55:43 +08:00 via iPhone
    看你们在这各种喷,感觉特别逗,其实这个问题滤一下就好了嘛


    首先明确一点,git 确实比 svn 好用(强行刚请绕道,或者搞一个能大面积推广的 svn flow 出来),他是一个新的替代者,所以会有大量的实际生产采用,还有庞大的社区支持,我想这个是不争的事实

    其次,不考虑学习成本情况下,svn 切换到 git 成本高不高?就我目前来看,有很多成熟的方案切换,成本基本不怎么高

    最后,学习成本问题,当你知道一个工具比另一个工具好(能切实提高工作效率),切换成本也不高,那么请问这个技术我是否应该学习? 那么 low 不 low 的自己考虑吧
    yulitian888
        80
    yulitian888  
       2018-06-20 09:56:52 +08:00
    @mritd 丝毫没有觉得 CI、CD 有什么不妥。SVN+TeamCity
    zhouS9
        81
    zhouS9  
       2018-06-20 09:57:20 +08:00
    @shijingshijing 我们公司就是
    mritd
        82
    mritd  
       2018-06-20 09:58:49 +08:00 via iPhone
    @yulitian888 你要说上商业工具,那没辙了,xp 给钱也有人维护
    hahastudio
        83
    hahastudio  
       2018-06-20 09:59:01 +08:00
    话说回来,感觉 git submodule 没有 svn external link 好用
    yh7gdiaYW
        84
    yh7gdiaYW  
       2018-06-20 09:59:17 +08:00
    项目体积太大的时候根本用不了 git 吧,比如端游。
    svn 可以只拉下来其中一个目录,git 反正我是不知道怎么实现这个功能。
    murmur
        85
    murmur  
       2018-06-20 10:01:20 +08:00
    我还以为是多牛的人呢,就来挑 svn 和 git 的事,版本工具只是个工具,最后还是看人和制度执行
    yulitian888
        86
    yulitian888  
       2018-06-20 10:01:37 +08:00
    @mritd 并没有付费使用。免费版本 3 Agents + 20 Configuration 的限额足够小团队用了。tag、Branch 版本发布毫无压力。
    zh5e
        87
    zh5e  
       2018-06-20 10:06:40 +08:00
    @tianjusanren

    1. svn 挂了恢复要多久?开发是不是得暂停提交?这个 git 就没有这个问题,就算仓库主机挂掉了,也可以合并到临时仓库。

    2. 开发、测试、生成环境的隔离,涉及到各个环境修改后的代码合并的问题?你们是不是把修改的代码下载到本地,然后用合并工具合并到 svn 上。
    yh7gdiaYW
        88
    yh7gdiaYW  
       2018-06-20 10:12:20 +08:00
    孤陋寡闻了,查了下 git 还真支持 pull 一个目录。
    不过占用的空间仍然是个问题,对于游戏这样大体积的项目来说,产生大量的个人分支还是不靠谱的。
    sunny352787
        89
    sunny352787  
       2018-06-20 10:12:54 +08:00
    哎???请问各位用 Git 的,版本库权限是怎么管理的?
    tianjusanren
        90
    tianjusanren  
       2018-06-20 10:13:35 +08:00
    tianjusanren
        91
    tianjusanren  
       2018-06-20 10:15:01 +08:00
    @zh5e 1、svn 挂掉的话,10 分中内恢复, 2、开发、测试、生产环境隔离,不同环境用的不同分支,用分支区分权限
    murmur
        92
    murmur  
       2018-06-20 10:15:13 +08:00
    @zh5e svn 挂了是公司运维不力关 svn 什么是 这么重要的服务没有备份没冗余赖不了别人
    ookcode
        93
    ookcode  
       2018-06-20 10:15:53 +08:00
    游戏项目用 GIT 试试,二进制大到你怀疑人生。
    zhaogaz
        94
    zhaogaz  
       2018-06-20 10:16:29 +08:00
    好了,鄙视链一览无余
    yylucifer
        95
    yylucifer  
       2018-06-20 10:17:15 +08:00
    @mritd #12 too young,说不定人家的 CI/CD 比大部分公司都做得好而全。。
    zh5e
        96
    zh5e  
       2018-06-20 10:22:51 +08:00
    @tianjusanren
    1. 中心化服务,恢复不了呢?(中心化服务和分布式的区别)
    2. 环境隔离,根本就访问不到 svn 服务器。

    @murmur



    git flow, ci 就不讲了

    这些问题对你们来讲都是不问题的话,svn 也挺好 - -
    lcdxiangzi
        97
    lcdxiangzi  
       2018-06-20 10:25:15 +08:00
    @shijingshijing 我们还真是这样的,就服你
    lcdxiangzi
        98
    lcdxiangzi  
       2018-06-20 10:30:06 +08:00
    @SakuraKuma 对呃,我也没有看懂#38 的点在哪里。。。
    ful1v1dcker
        99
    ful1v1dcker  
       2018-06-20 10:32:51 +08:00
    @sunny352787 靠意念[手动滑稽]
    MushishiXian
        100
    MushishiXian  
       2018-06-20 10:33:13 +08:00   ❤️ 1
    人家问的是用 svn 的团队是不是技术栈比较老旧,怎么又开始 git 和 svn 的口水战了...
    1  2  
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5527 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 39ms · UTC 06:46 · PVG 14:46 · LAX 22:46 · JFK 01:46
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.