Git 如此流行的 8 个原因
说到版本控制,现在几乎人人都在谈论 Git。但正因为它已成为一种标准,人们常常盲目地采用它,却不了解 Git 相较于 Subversion、Mercurial 或 CVS 等其他系统究竟有哪些优势。即使你已经在使用 Git,我认为了解 Git 的优势所在仍然很有帮助。
请继续阅读,了解 Git 为何如此流行的部分事实(包括一些客观事实和间接事实)。
1. 节省时间
想象一下,每次移动鼠标之前都要等 5 秒钟。是不是很烦人?版本控制系统也差不多——虽然每次命令也只耗时几秒钟,但一天下来累积起来也是一笔不小的开支。而 Git 的速度却快如闪电。与其等待版本控制系统的响应,不如把时间花在更有意义的事情上。
2. 离线工作
如果你想在旅途中工作怎么办?使用像 Subversion 或 CVS 这样的集中式版本控制系统,一旦无法连接到中央仓库,你就寸步难行。而使用 Git,几乎所有操作都可以在本地完成:提交代码、浏览项目的完整历史记录、合并或创建分支……Git 让你可以自由选择工作地点和时间。
3. 撤销错误
我有时也会犯错(这对我来说也是个令人震惊的发现!)。我喜欢 Git 的一点是,几乎每种情况都有相应的“撤销”命令。比如,你可以撤销上次提交,因为你忘记添加那个小改动;或者撤销整个提交,因为某个功能不再需要了。而且,当遇到棘手的问题时,你甚至可以使用 Reflog 恢复“已删除”的提交——因为实际上,Git 很少真正删除任何东西。这让人安心。
如果你想学习如何使用 Git 撤销你的错误,可以看看免费的Git 急救包,这是一系列短视频,教你如何使用 Git 来避免你的错误。
4. 安然入睡
你有没有搞砸过 Subversion 版本库?我倒是搞砸过(而且我至今还对当时的头痛记忆犹新……)。用 Git 就完全放心了,因为团队里每个人电脑上的每个克隆版本都是一个可用的备份。此外,Git 的几乎所有操作都只是添加数据(删除操作非常罕见)。这使得真正搞砸事情变得非常困难。这种感觉真好。
5. 提交有用的信息
把牛奶、冰淇淋和西红柿扔进搅拌机里,至少会有两个问题。首先,启动搅拌机后,没人能从这堆乱七八糟的东西里看出你到底放了什么。其次,你没办法“撤销”番茄的添加。如果你提交了一堆不相关的更改(比如功能 A 的一小部分、功能 B 的一些东西、一个小小的 bug 修复等等),情况也是如此。你的队友很难理解发生了什么,而且如果功能 A 导致问题,他们也很难撤销。Git 可以帮助你避免这种混乱,并创建细粒度的提交。凭借其独特的“暂存区”概念,你可以精确地决定哪些更改应该包含在下一次提交中,甚至可以细化到单行代码。这就是版本控制开始发挥作用的地方。
6. 以你自己的方式工作
使用 Git 时,您可以采用自己熟悉的、最舒适的工作流程。您无需成为代码高手也能轻松上手。当然,您可以连接多个远程仓库,使用变基(rebase)而非合并(merge),并在需要时使用子模块。但您也可以像在 Subversion 中一样,轻松地使用单个远程仓库。无论您的工作流程如何,所有其他优势都依然存在。
7. 不要混淆事物
关注点分离对于跟踪项目至关重要。当你在开发功能 A 时,未完成的代码不应该影响到其他任何内容(或任何人)。如果最终发现该功能不再必要怎么办?或者,如果在提交 10 次后,你发现自己采取了完全错误的方法怎么办?分支是解决这些问题的答案。虽然其他版本控制系统也支持分支,但只有 Git 能让分支功能真正发挥作用:快速且易于使用。
8. 顺其自然
只有死鱼才会随波逐流。有时,聪明的开发者也会这样做。越来越多的知名公司和开源项目都在使用 Git:Ruby on Rails、jQuery、Perl、Debian、Linux 内核等等。庞大的社区本身就是一大优势,因为围绕着系统会形成一个生态系统。从GitHub和GitLab等代码托管平台,到Tower等图形用户界面工具,再到教程和文档:你所需的一切都已准备就绪!
提升你的 Git 技能
Git 可以为你的开发工作流程增添巨大的价值。但前提是,你必须超越基本的“提交、拉取、推送”操作!
网上有很多关于Git 的免费教程——你只需要投入一点时间就能成为一名更优秀的开发者。
文章来源:https://dev.to/gittower/8-reasons-why-git-is-so-popular-3mj4



