首页

加入收藏

您现在的位置 : 首页 > 体育健身

Git还是SVN?为什么很多程序员对Git比较排斥,但又不得不用?

时间:01-29 来源:体育健身 访问次数:41

Git还是SVN?为什么很多程序员对Git比较排斥,但又不得不用?

为什么很多年纪大的程序员都比较排斥使用Git而比较喜欢SVN呢?对于这个争议,其实有很多解释,不同的程序员有不同的解释,但是我觉得,不管是Git还是SVN只要用习惯了,两者并无太大的区别,只是有人使用SVN用久了,不习惯Git而已!而且,很多公司将SVN换成Git,并不是Git有多么优秀,纯粹是使用Git风险低而已。不习惯很多不喜欢Git的人主要还是Git的使用方式。使用过SVN的人都知道,SVN既可以直接选择单独文件上传,也可以将SVN插件嵌入在IDE(比如Visual Studio)中上传,下载也很简单,可以在文件夹中直接右键SVN下载,也可以在IDE中直接操作Git拉取下载。可以说,操作和现在的Git并无太大差别。而且,两者从软件背后的逻辑来说,也并无太大区别,只是使用感受上的区别而已。很多第一次使用Git的程序员不习惯Git的原因主要在于Git的代码上传和更新上。举个例子,很多刚使用Git的程序员基本上只会用两个按钮,分别是“拉取”和“上传”。我们公司曾经有个刚使用Git的大龄程序员曾经就发生过一件事情,让他怒不可遏。他写了一天的代码,然后想把代码提交到Git上去,但是一看差异列表,有好几个差异项,但是有几个代码文件中的代码他还没有写好,于是,他就点了旁边的减号。他的目的很简单,就是想把他不想上传的代码从差异列表里面给除去,等写好了再传。但是,让他没想到的是,他最后发现,他的一系列操作下来,让他原本写了一天的代码变成了Git上的版本。也就是说,他不知道怎么操作的,导致了Git上的代码覆盖了他本地的代码,导致他本地辛辛苦苦写好的代码丢失了!在那段时间里,他一谈起Git就要打人,可时间久了,他学会了怎么操作Git之后,就再也没有排斥反应了!这也是我见过的大多数一开始排斥Git的程序员中最大的原因之一,几乎大部分从SVN转到Git的程序员都有不小心把本地代码给覆盖成Git云端代码的操作,其中自然也包括我!Git对于程序员的优势不明显第二个方面是很多人认为SVN已经足够强大了,Git的存在完全是多余的!其实,作为一名程序员,一开始我也是比较排斥Git的,原因正是如此。我第一次使用Git的时候,我当时的公司用了十几年的SVN作为代码库工具,我也用了将近十年的SVN,早就已经习惯了SVN的那种操作方式,突然,公司说以后新的项目需要使用Git了,一时间我就不习惯了,也出现过前面说的写了一天的代码,但是因为操作Git失误,把本地代码弄丢了的事情。所以,有段时间内,为了给自己排斥Git找个理由,我们几个老程序员私下里给Git定了个“罪”,那就是Git完全没有必要存在。实际上,在我当时的公司,Git的确没有存在的意义,或者说意义不大。我到现在也没有get到Git比SVN方便或者强大的点,很多程序员或许跟我一样,完全不明白为什么要从SVN换到Git。其实,这也是很多人排斥Git的原因之一,Git的优点对于大多数程序员来说,聊胜于无,反而从旧的代码库管理工具转到新的工具上,很有可能会出现各种问题。举个例子,SVN就像一个手机,满足了各种需求就行了,Git如果比作比SVN更高端的手机,对于原本就没有高端机需求的人来说,其实是一样的,但是,你却要多支出更多的钱。所以,很多排斥Git的程序员,主要还是觉得没必要,因为SVN对于大多数公司来说,其实已经够了!使用Git显得有些多余,有跟风的嫌疑。但是,如果从程序员的角度去考虑问题,那格局就有点小了!首先,SVN有个很大的问题,就是它是收费的,目前很多小公司使用的SVN其实都是“绿色版”,虽然并没有版权方去找这些小公司的麻烦,但是毕竟还是有风险存在的。相对于SVN,Git有大量的开源版本可用,而且因为是通用协议,各种IDE也有官方插件甚至是直接内嵌支持,说白了就是轻量。它不像SVN那样,需要在服务端部署一套程序,客户端再安装一个程序。可以这么说,使用Git,只要有网,你可以在任何设备上下载源码,而不需要在乎这个设备上有没有安装软件!结语我觉得,这就是很多公司将代码库管理工具改成Git的最大原因,基于上述原因,Git相对于公司来说,肯定是个好东西!但对于程序员来说,不一定!用惯了SVN的程序员,在刚开始使用Git时,大部分人都不会太喜欢!那些上来就夸Git的程序员,基本上就是一开始使用的就是Git。如果这件事情反过来,如果一个程序员一直使用的是Git,突然有一天,公司说要换成SVN了,我相信,SVN也会被喷得什么都不是!但是,不管是SVN还是Git,程序员喜不喜欢其实都不重要,对于公司来说,使用哪个工具对于公司来说最有利,公司就会用哪个工具。目前来说,Git在各个方面的确比SVN有优势!

本信息由网络用户发布,本站只提供信息展示,内容详情请与官方联系确认。

标签 : 体育健身