Git 10周年訪談:來自 QT 維護者 Thiago Macieira 使用 Git 的成功故事和秘訣
「自從 Linux 的創造者 Torvalds 發布了第一個現在流行的分散式控制系統版本,Git 已經走過一段很長的道路。比如,根據 Atlassian 添加請求了三年的最初的版本。而且,隨著時間的退役,它已經添加了更多協作工具,代碼檢查工具,集成到持續集成系統,還有更多。」 QT 項目英特爾核心維護者和軟體架構師回憶說。
「在那時我們選擇了 Git ,它是用於原始性能和用於分離式的,」 Macieira 說,「從那時起,這已經獲得其他的好處...而且因為現在它非常流行,所以他對於新參與者不再是一個門檻。」
Macieira 分享了 QT 項目(一個跨平台圖形用戶界面應用程序開發框架)怎麼使用和為什麼使用Git ,以及 QT 項目使用開發工具的成功故事,同時對於一些專業用戶他也給出了自己在 Git 使用中最喜歡的技巧。
為什麼Qt使用Git?
Thiago Macieira :因為 Git 是對於工作來說是最好的工具。 Qt 擁有幾個不同的控制系統版本,在2008年之後,我們清楚地得到結論,我們需要一些分散式的東西用來促進團隊合作的成長。我們主要的幾個貢獻者已經使用 git-p4 區保存本地樹(tree)和分享東西。而且,我們也想讓我們的庫公共化。但是只讀的話,有些事情我們不可能會和我們之前做的集中系統。
在我們選定 Git 之前,我們的確拿它和其他分散式控制系統版本作過比較,並且我們發現 Git 擁有最好的整體表現和長期成功的機率。當然我們的確在 linux 系統上確定了一些性能問題,但是這些很多都固定一次確定下來。
是什麼使 Git 能變成一個這麼好的工具?
Thiago Macieira:在那時我們選擇了 Git ,它是用於原始性能和用於分離式的,從那時起,我們從中已經獲得其他的好處,像協作工具,代碼檢查工具,集成到持續集成系統,等等。因為現在它非常流行,所以他對於新參與者不再是一個門檻。
有多少開發人員合作使用 Git 呢?
Thiago Macieira:基本上每周80到100個不等的人, 見http://www.macieira.org/~thiago/qt-stats/current/qt-all.author.unique.png]。直到的項目一年,我的一個腳本顯示的有288人。
你個人會使用多少Git?
Thiago Macieira:一直都在。那些我參加的每一個工程項目和那些沒做出貢獻的項目。甚至是那些都沒有在 Git 上正式主持的項目,像GCC, LLVM 和 Clang。
我也在 UGFWINI 上使用了(雖然不是故意的)以此來支持我的主目錄。
現在 Qt 最活躍的 git 存儲庫是什麼?為什麼是它?
Thiago Macieira:是 qtbase.git,隨後是qt-creator.git。從以下可以看出他們的數據:
http://www.macieira.org/~thiago/qt-stats/current/qtbase.author.absolute.png
http://www.macieira.org/~thiago/qt-stats/current/creator.author.absolute.png
他們是我們最大的存儲庫,是我們基礎設施的關鍵部分。 qtbase.git 包括了 Qt 基礎庫,同時也是最久遠的。然而,qt-creator.git 包含了這個 IDE ,也是個程序大而複雜的程序應用。
你最喜歡的 git 專業技巧是什麼呢?
Thiago Macieira:——補丁 git 添加選項, git 檢出 (checkout)和 git 重置。
你有什麼可以分享為我們分享的 git 成功小故事嗎?
Thiago Macieira:我想是從 KDE 的 Subversion 伺服器轉換到 Git 的時候吧。當我開始這個項目時,KDE Subversion 伺服器就已經是有800k提交的世界上最大的伺服器了。而我開始轉換時,就已有1.1百萬次提交,並要求我們很多人的分布努力書寫規則來導入正確的分支和標籤。
LinuxStory譯文鏈接:http://www.linuxstory.org/git-success-stories-and-tips-from-qt-maintainer-thiago-macieira
rebase一定能算上GIT 最好用的功能之一