W3Cschool
恭喜您成為首批注冊用戶
獲得88經驗值獎勵
在結束本章之前,我還想和大家分享一些 Git 使用的技巧和竅門。很多使用 Git 的開發(fā)者可能根本就沒用過這些技巧,我們也不是說在讀過本書后非得用這些技巧不可,但至少應該有所了解吧。說實話,有了這些小竅門,我們的工作可以變得更簡單,更輕松,更高效。
如果你用的是 Bash shell,可以試試看 Git 提供的自動補全腳本。下載 Git 的源代碼,進入contrib/completion
目錄,會看到一個 git-completion.bash
文件。將此文件復制到你自己的用戶主目錄中(譯注:按照下面的示例,還應改名加上點:cp git-completion.bash ~/.git-completion.bash
),并把下面一行內容添加到你的 .bashrc
文件中:
source ~/.git-completion.bash
也可以為系統(tǒng)上所有用戶都設置默認使用此腳本。Mac 上將此腳本復制到 /opt/local/etc/bash_completion.d
目錄中,Linux 上則復制到 /etc/bash_completion.d/
目錄中。這兩處目錄中的腳本,都會在 Bash 啟動時自動加載。
如果在 Windows 上安裝了 msysGit,默認使用的 Git Bash 就已經配好了這個自動補全腳本,可以直接使用。
在輸入 Git 命令的時候可以敲兩次跳格鍵(Tab),就會看到列出所有匹配的可用命令建議:
$ git co<tab><tab>
commit config
此例中,鍵入 git co 然后連按兩次 Tab 鍵,會看到兩個相關的建議(命令) commit 和 config。繼而輸入 m<tab>
會自動完成 git commit
命令的輸入。
命令的選項也可以用這種方式自動完成,其實這種情況更實用些。比如運行 git log
的時候忘了相關選項的名字,可以輸入開頭的幾個字母,然后敲 Tab 鍵看看有哪些匹配的:
$ git log --s<tab>
--shortstat --since= --src-prefix= --stat --summary
這個技巧不錯吧,可以節(jié)省很多輸入和查閱文檔的時間。
Git 并不會推斷你輸入的幾個字符將會是哪條命令,不過如果想偷懶,少敲幾個命令的字符,可以用 git config
為命令設置別名。來看看下面的例子:
$ git config --global alias.co checkout
$ git config --global alias.br branch
$ git config --global alias.ci commit
$ git config --global alias.st status
現在,如果要輸入 git commit
只需鍵入 git ci
即可。而隨著 Git 使用的深入,會有很多經常要用到的命令,遇到這種情況,不妨建個別名提高效率。
使用這種技術還可以創(chuàng)造出新的命令,比方說取消暫存文件時的輸入比較繁瑣,可以自己設置一下:
$ git config --global alias.unstage 'reset HEAD --'
這樣一來,下面的兩條命令完全等同:
$ git unstage fileA
$ git reset HEAD fileA
顯然,使用別名的方式看起來更清楚。另外,我們還經常設置 last
命令:
$ git config --global alias.last 'log -1 HEAD'
然后要看最后一次的提交信息,就變得簡單多了:
$ git last
commit 66938dae3329c7aebe598c2246a8e6af90d04646
Author: Josh Goebel <dreamer3@example.com>
Date: Tue Aug 26 19:48:51 2008 +0800
test for current head
Signed-off-by: Scott Chacon <schacon@example.com>
可以看出,實際上 Git 只是簡單地在命令中替換了你設置的別名。不過有時候我們希望運行某個外部命令,而非 Git 的子命令,這個好辦,只需要在命令前加上 !
就行。如果你自己寫了些處理 Git 倉庫信息的腳本的話,就可以用這種技術包裝起來。作為演示,我們可以設置用 git visual
啟動 gitk
:
$ git config --global alias.visual '!gitk'
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: