當前位置:
首頁 > 知識 > 改變我使用 Git 工作方式的七個技巧|Linux 中國

改變我使用 Git 工作方式的七個技巧|Linux 中國

導讀:這些有用的技巧將改變你使用這個流行的版本控制系統的工作方式。                         

本文字數:3317,閱讀時長大約:4分鐘

https://linux.cn/article-12894-1.html

作者:Rajeev Bera

譯者:Xingyu.Wang

Git 是目前最常見的版本控制系統之一,無論是私有系統還是公開託管的網站,都在使用它進行各種開發工作。但無論我對 Git 的使用有多熟練,似乎總有一些功能還沒有被發現,下面是改變我使用 Git 工作方式的七個技巧。

1、Git 中的自動更正

我們有時都會打錯字,但如果啟用了 Git 的自動更正功能,就可以讓 Git 自動修正打錯的子命令。

假設你想用??檢查狀態,卻不小心輸入了?。正常情況下,Git 會告訴你??不是一條有效的命令:

為了避免類似的情況發生,請在 Git 配置中啟用 Git 自動更正功能:

如果你希望這個命令只適用於你當前的版本庫,請省略??選項。

這條命令啟用了自動更正功能。更深入的教程可以在Git Docs中找到,但嘗試一下和上面一樣的錯誤命令,就能很好地了解這個配置的作用:

Git 現在不會建議使用其他子命令,而是直接運行最上面的建議,在本例中是?。

2、計算你的提交量

你需要計算提交數量可能有很多原因。例如,許多開發者通過計算提交數量來判斷何時該增加構建版本號,或者只是想了解項目的進展情況。

要計算提交數量其實很簡單直接,下面是 Git 的命令:

在上面的命令中,?應該是當前版本庫中有效的分支名稱:

3、優化你的倉庫

你的代碼倉庫不僅對你有價值,對你的組織也有價值。你可以通過一些簡單的做法來保持你的版本庫的清潔和更新。其中一個最好的做法是使用 .gitignore 文件。使用這個文件,就是告訴 Git 不要存儲許多不需要的文件,比如二進位文件、臨時文件等等。

為了進一步優化你的版本庫,你可以使用 Git 的垃圾收集功能:

當你或你的團隊大量使用??或??命令時,這條命令就會起到幫助作用。

這個命令是一個內部工具,可以清理倉庫中無法訪問或 「孤兒」 Git 對象。

4、備份未被跟蹤的文件

大多數時候,刪除所有未被跟蹤的文件是安全的。不過很多時候,你不僅要刪除,還要為你的未跟蹤文件創建一個備份,以備以後需要。

通過 Git 和一些 Bash 命令管道,可以很容易地為你的未被跟蹤的文件創建一個壓縮包:

上面的命令製作了一個名為??的存檔(並排除了??中列出的文件)。

5、了解你的 .git 文件夾

每個版本庫都有一個??文件夾。它是一個特殊的隱藏文件夾。

Git 的工作主要依賴於兩個部分:

1. 工作樹(你當前簽出的文件狀態)。

2.?你的 Git 倉庫的路徑(即你的??文件夾的位置,其中包含版本信息)。

這個文件夾存儲了所有的引用和其他重要的細節,比如配置、倉庫數據、HEAD 狀態、日誌等等。

如果你刪除這個文件夾,你的源代碼的當前狀態不會被刪除,但你的遠程信息,如你的項目歷史記錄,會被刪除。刪除這個文件夾意味著你的項目(至少是本地副本)不再處於版本控制之下。這意味著你不能跟蹤你的變化;你不能從遠程拉取或推送。

一般來說,不需要在??文件夾里做什麼,也沒有什麼應該做的。它是由 Git 管理的,基本上被認為是個禁區。然而,這個目錄里有一些有趣的工件,包括 HEAD 的當前狀態。

它還可能包含對你的存儲庫的描述:

這是一個未命名的倉庫,編輯這個??文件可以命名這個倉庫。

Git 鉤子文件夾()也在這裡,裡面有一些鉤子示例文件。你可以閱讀這些示例來了解通過 Git 鉤子可以實現什麼,你也可以閱讀 Seth Kenlon 的 Git 鉤子介紹。

6、查看另一個分支的文件

有時你想查看另一個分支的文件的內容。用一個簡單的 Git 命令就可以實現,而且不需要切換分支。

假設你有一個名為README.md的文件,它在??分支中,而你正在??分支上工作。

使用下面的 Git 命令,你可以在終端上完成:

一旦你執行了這個命令,你就可以在你的終端上查看文件的內容。

7、在 Git 中搜索

只需一個簡單的命令,你就可以像專業人士一樣在 Git 中搜索。更棒的是,即使你不確定是在哪個提交或分支上做的修改,也可以在 Git 中搜索。

例如,假設你想在你的版本庫中搜索??這個字元串:

試試這些技巧

希望這些高級技巧對你有用,提高你的工作效率,為你節省很多時間。

你有喜歡的Git 小技巧嗎?在評論中分享吧。

via:https://opensource.com/article/20/10/advanced-git-tips

作者:Rajeev Bera選題:lujun9972譯者:wxy校對:wxy

本文由LCTT原創編譯,Linux中國榮譽推出

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!


請您繼續閱讀更多來自 Linux中國 的精彩文章:

X.Org Server 進入維護模式|新聞拍一拍
ninja:一個簡單的構建方式|Linux 中國