1. git的自動更正
我們有時都會打錯字,但如果啟用了 git 的自動更正功能,就可以讓 git 自動修正打錯的子命令。
假設你想用git status
檢查狀態,卻不小心輸入了git stats
。正常情況下,git 會告訴你stats
不是一條有效的命令:
1為了避免類似的情況發生,請在 git 配置中啟用 git 自動更正功能:$ git stats
2 git: 『stats』 is
not a git command. see 『git --help』.
3 the most similar command is
4 status
$ git config --global help. autocorrect 1如果你希望這個命令只適用於你當前的版本庫,請省略
--global
選項。
1git 現在不會建議使用其他子命令,而是直接執行最上面的建議,在本例中是$ git stats
2 git: 『stats』 is
not a git command. see 『git --help』.
3on branch master
4 your branch is up to date with 『origin/master』.
5 nothing to commit, working tree clean
git status
。
2. 計算你的提交量
要計算提交數量其實很簡單直接,下面是 git 的命令:
$ git rev-list --count branch-name在上面的命令中,
branch-name
應該是當前版本庫中有效的分支名稱:
$ git rev-list –-count master3. 優化你的倉庫你的**倉庫不僅對你有價值,對你的組織也有價值。你可以通過一些簡單的做法來保持你的版本庫的清潔和更新。其中乙個最好的做法是使用 .gitignore檔案 。使用這個檔案,就是告訴 git 不要儲存許多不需要的檔案,比如二進位制檔案、臨時檔案等等。32$ git rev-list –-count dev
34
為了進一步優化你的版本庫,你可以使用 git 的垃圾收集功能:
1 $ git go --prune=now --aggressive當你或你的團隊大量使用
pull
或push
命令時,這條命令就會起到幫助作用。
這個命令是乙個內部工具,可以清理倉庫中無法訪問或 「孤兒」 git 物件。
4. 備份未被跟蹤的檔案
大多數時候,刪除所有未被跟蹤的檔案是安全的。不過很多時候,你不僅要刪除,還要為你的未跟蹤檔案建立乙個備份,以備以後需要。
通過 git 和一些 bash 命令管道,可以很容易地為你的未被跟蹤的檔案建立乙個壓縮包:
$ git ls-files --others --exclude-standard -z |\上面的命令製作了乙個名為xargs -0 tar rvf ~/backup-untracked.zip
backup-untracked.zip
的存檔(並排除了.gitignore
中列出的檔案)。
5、了解你的 .git 資料夾
每個版本庫都有乙個.git
資料夾。它是乙個特殊的隱藏資料夾。
$ ls -agit 的工作主要依賴於兩個部分:. … .git
1. 工作樹(你當前簽出的檔案狀態)。2. 你的 git 倉庫的路徑(即你的.git
資料夾的位置,其中包含版本資訊)。
這個資料夾儲存了所有的引用和其他重要的細節,比如配置、倉庫資料、head 狀態、日誌等等。
如果你刪除這個資料夾,你的源**的當前狀態不會被刪除,但你的遠端資訊,如你的專案歷史記錄,會被刪除。刪除這個資料夾意味著你的專案(至少是本地副本)不再處於版本控制之下。這意味著你不能跟蹤你的變化;你不能從遠端拉取或推送。
一般來說,不需要在.git
資料夾裡做什麼,也沒有什麼應該做的。它是由 git 管理的,基本上被認為是個禁區。然而,這個目錄裡有一些有趣的工件,包括 head 的當前狀態。
$ cat .git/head它還可能包含對你的儲存庫的描述:ref: refs/heads/master
$ cat .git/description這是乙個未命名的倉庫,編輯這個
description
檔案可以命名這個倉庫。
6、檢視另乙個分支的檔案
有時你想檢視另乙個分支的檔案的內容。用乙個簡單的 git 命令就可以實現,而且不需要切換分支。
使用下面的 git 命令,你可以在終端上完成:
$ git show main:readme.md一旦你執行了這個命令,你就可以在你的終端上檢視檔案的內容。
7、在 git 中搜尋
只需乙個簡單的命令,你就可以像專業人士一樣在 git 中搜尋。更棒的是,即使你不確定是在哪個提交或分支上做的修改,也可以在 git 中搜尋。
例如,假設你想在你的版本庫中搜尋font-size: 52 px;
這個字串:
$ git rev-list –all | xargs git grep -f 'font-size: 52 px;
'f3022…
9e12:htmltemplate/style.css: font-size: 52
px;e9211…
8244:rr.web/content/style/style.css: font-size: 52 px;
七個你無法忽視的Git使用技巧
修改錯誤的提交資訊 commit message 提交資訊很長時間內會一直保留在你的 庫 code base 中,所以你肯定希望通過這個資訊正確地了解 修改情況。下面這個命令可以讓你編輯最近一次的提交資訊,但是你必須確保沒有對當前的 庫 working copy 做修改,否則這些修改也會隨之一起提交...
七個你無法忽視的Git使用技巧
提交資訊很長時間內會一直保留在你的 庫 code base 中,所以你肯定希望通過這個資訊正確地了解 修改情況。下面這個命令可以讓你編輯最近一次的提交資訊,但是你必須確保沒有對當前的 庫 working copy 做修改,否則這些修改也會隨之一起提交。git commit amend m your ...
七個你無法忽視的Git使用技巧
程式開發中的版本控制必不可少,python開發也一樣。而版本控制系統中,目前使用最廣泛的,可能就是git,而它最著名的代表就是github。本篇譯文為大家介紹了7個git使用技巧,目的都是方便程式設計師彌補自己在開發中所犯的錯誤。與其他技術相比,git應該拯救了更多開發人員的飯碗。只要你經常使用gi...