我.gitconfig在我的機器上重新加載作業系統時丟失了別名,并且我未能為我曾經在舊機器上運行的命令設定別名。
我曾經git commit -am 'commit message here'在終端中運行,它會為我添加所有檔案,git add .然后為我添加作為提交訊息傳入git commit -m的別名命令的字串。-am我應該如何正確設定和別名以在我的新機器上重新創建此行為?
我玩過各種語法,例如:
am = "git add . && git commit -m"
或 am = "!git add . && git commit -m"
但這些都不起作用,所以一定是不正確的。誰能建議如何最好地做到這一點?謝謝
uj5u.com熱心網友回復:
如果你真的要使用git add .,你可以定義一個.bashrc函式或者一個git別名。
但如前所述,尤其是使用,在進行任何提交之前git add .,最好先執行 agit status并仔細檢查您實際添加到索引中的內容。
因此,您可以考慮在 git add 之后自動顯示狀態的另一個別名。
[alias]
sadd = !f() { cd -- "${GIT_PREFIX:-.}" && git add -- "$@" && git status; }; f
如Git Aliases
!中所述,執行外部命令(這里是f同一 shell 中的函式,比!sh '...'啟動子 shell 更快)。${GIT_PREFIX:-.}如果設定,則使用環境變數GIT_PREFIX值,如果.未設定,則使用 ''(bash 引數擴展)。
正如我在“獲取運行 git 別名的路徑”中解釋的那樣:
如果未定義
GIT_PREFIX(因為您正在從 repo 的根檔案夾執行別名),它將被替換為 ' '。當您從根檔案夾 執行別名時,未定義。因此需要使用' '(當前檔案夾)。.GIT_PREFIX.
- 一旦您位于 Git 存盤庫根檔案夾,
git add -- "$@"將添加所有內容(如果未傳遞引數),或者僅添加您作為引數傳遞的內容 ("$@")。
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/414054.html
標籤:
