在 Linus Torvalds 開發 Git 後的十四年間,它為軟體開發所帶來的影響是其它工具難以企及的:在 StackOverflow 的 2018 年開發者調查[1] 中,87% 的受訪者都表示他們使用 Git 來作為他們專案的版本控制工具。顯然,沒有其它工具能撼動 Git 版本控制管理工具(SCM)之王的地位。
為了在 4 月 7 日 Git 的十四週年這一天向 Git 表示敬意,我問了一些愛好者他們最喜歡 Git 的哪一點。以下便是他們所告訴我的:
(為了便於理解,部分回答已經進行了小幅修改)
“我無法忍受 Git。無論是難以理解的術語還是它的分散式。使用 Gerrit 這樣的外掛才能使它像 Subversion 或 Perforce 這樣的集中式倉庫管理器使用的工具的一半好用。不過既然這次的問題是‘你喜歡 Git 的什麼?’,我還是希望回答:Git 使得對複雜的原始碼樹操作成為可能,並且它的回滾功能使得實現一個要 20 次修改才能更正的問題變得簡單起來。”
— Sweet Tea Dorminy
“我喜歡 Git 是因為它不會強制我執行特定的工作流程,並且開發團隊可以自由地以適合自己的方式來進行團隊開發,無論是拉取請求、以電子郵件遞送差異檔案或是給予所有人推送的許可權。”
— Andy Price[3]
“我從 2006、2007 年的樣子就開始使用 Git 了。我喜歡 Git 是因為,它既適用於那種從未離開過我電腦的小專案,也適用於大型的團隊合作的分散式專案。Git 使你可以從(幾乎)所有的錯誤提交中回滾到先前版本,這個功能顯著地減輕了我在軟體版本管理方面的壓力。”
— Jonathan S. Katz[4]
“我很欣賞 Git 那種 底層命令和高層命令[5] 的理念。使用者可以使用 Git 有效率地分享任何形式的資訊,而不需要知道其內部工作原理。而好奇的人可以透過其表層的命令,而發現其為許多程式碼分享平臺提供了支援的可以定位內容的檔案系統。”
— Matthew Broberg[6]
“我喜歡 Git 是因為瀏覽、開發、構建、測試和向我的 Git 倉庫中提交程式碼的工作幾乎都能用它來完成。它經常會調動起我參與開源專案的積極性。”
— Daniel Oh[7]
“Git 是我用過的首個版本控制工具。數年間,它從一個可怕的工具變成了一個友好的工具。我喜歡它使你在修改程式碼的時候更加自信,因為它能保證你主分支的安全(除非你強制提交了一段考慮不周的程式碼到主分支)。你可以檢出先前的提交來撤銷更改,這一點也是很棒的。”
— Kedar Vijay Kulkarni[8]
“我之所以喜歡 Git 是因為它淘汰了一些其它的版本控制工具。沒人使用 VSS,而 Subversion 可以和 git-svn 一起使用(如果必要),BitKeeper 則和 Monotone 一樣只為老一輩所知。當然,我們還有 Mercurial,不過在我幾年之前用它來為 Firefox 新增 AArch64 支援時,我覺得它仍是那種還未完善的工具。部分人可能還會提到 Perforce、SourceSafe 或是其它企業級的解決方案,我只想說它們在開源世界裡並不流行。”
— Marcin Juszkiewicz
“我喜歡內建的 SHA1 化物件模型(commit → tree → blob)的簡易性。我也喜歡它的高層命令。同時我也將它作為對 JBoss/Red Hat Fuse 的補丁機制。並且這種機制確實有效。我還喜歡 Git 的 三棵樹的故事[10]。”
— Grzegorz Grzybek
“我喜歡 自動生成的 Git 說明頁[12](這個頁面雖然聽起來是有關 Git 的,但是事實上這是一個沒有實際意義的頁面,不過它總是會給人一種像是真的 Git 頁面的感覺…),這使得我對 Git 的敬意油然而生。”
— Marko Myllynen
“Git 改變了我作為開發者的生活。它使得 SCM 問題從世界上消失得無影無蹤。”
— Joel Takvorian
看完這十個愛好者的回答之後,就輪到你了:你最欣賞 Git 的什麼?請在評論區分享你的看法!
朋友會在“發現-看一看”看到你“在看”的內容