切换到Git的8个理由

 

  英文原文:git-tower 

  提到版本控制,最近大家都在谈 Git。当然,四处议论纷纷还不足以证明切换到 Git 上有多么正确。这里有一些能证明 Git 非常出色的有力事实。

  1. 节省时间

  想象一下,每次动鼠标前你都要等待 5 分钟。这非常讨厌是不是?有了版本控制也是一样——我们每个命令消耗几秒,但是工作一天也累积起来了。但是 Git 快如闪电。把你的时间用在其他更重要的事情上,而不是等待版本控制工具的响应。

null

  2. 离线工作

  你出差的时候要工作怎么办?用诸如 Subversion 或者 CVS 的集中式版本控制系统,如果你不能连上中央版本库你就不能工作。有了 Git,在你的本地机器上几乎能做任何事:提交、查看项目完整历史记录、合并(merge)或者新建分支……Git 让你来决定何时何地开始工作。

  3. 回退错误

  有时候我会犯错(我也不敢相信!)。我喜欢 Git 的是它的一个小小的回退命令就能用于几乎任何场景。修正最后一次提交,因为你忘记包含一个小改动。撤销整个提交,因为那个特性已经不再需要。而且当处境变得困难时,你甚至可以用 Reflog 来恢复“已删除”的提交——因为在幕后 Git 极少会真正删除什么。这样心定气闲。

  4. 睡得香

  你曾经粉碎过 Subversion 的版本库吗?我就做过(我说这个的时候记忆的伤痛犹在)。有了 Git,我可以信心十足,因为团队里每个人在自己电脑上的克隆就是一份可用的备份。另外 Git 里的几乎每个操作都是增加数据(很少有删除的)。想搞砸都很难。这种感觉很好。

  5. 产生有用的提交

  把牛奶、冰淇淋和番茄投到搅拌机里会有(至少)两个问题。首先,启动搅拌机后,看着这一团东西,没人能说出你实际上放入的是什么。另外,你没办法把番茄再“回滚”。你做的一批不相关的提交(一点点A特性,再带一点B特性,还有一个小小的补丁……)也是一样的。对你的队友来说,很难理解发生了什么。当出现问题时,他们也不能简单地回滚特性A。Git 能帮你避免这种混乱和创建粒状提交。其独一无二的“缓存区”概念能让你决定在下一个提交里到底包含哪些改动,甚至小到哪些行。这是版本控制的用处所在。

  6. 按自己的方式工作

  当用 Git 工作时,你可以有你自己的工作流程。那个你觉得好的流程。使用 Git 你不需要成为编程高手。当然你可以连接多个远程的版本库,用变基(rebase)代替合并,需要时工作在子模块上。但是你也可以只是简单地工作在一个中央远程版本库上,如同在用 Subversion 一样。不管你的工作流程怎样,所有其他的优点都还在。

  7. 不会把东西搞混了

  分开关注是追踪事情的最高原则。当你工作在特性A上时,任何事(人)都不会被你未完成的代码所影响。如果这个特性不再需要了呢?或者如果在 10 个提交之后,你发现你做的完全不对呢?分支是这些问题的答案。其他的版本控制系统也有分支,但是 Git 是第一个让它做好它该做的:快速简单。

  8. 潮流

  只有死鱼才随波逐流。有时候聪明的开发者也这样。Git 被越来越多的知名公司和开源项目所使用:Ruby On Rails,jQuery,Perl,Debian,Linux 内核,还有很多。大型的社区通常自身就是一个优点,因为一个生态圈会围绕着该系统演进。大量的学习指南,工具,还有服务,会让 Git 变得更加吸引人。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值