與其他任何配置選項一樣,您可以通過運行git config --global alias.st <value here>
來設置該值,替換舊的值。您正在運行到的問題是,當你想在你設置的值空間,則需要使用引號:
git config --global alias.st "diff --stat"
不幸的是,如果你已經嘗試不帶引號運行,你可能已經引發了不同的問題。看看該位從documentation for git config
:
提要
'git config' name [value [value_regex]]
注意,有位叫value_regex
?由於您沒有引用您先前的命令,因此diff
被解釋爲value
,而--stat
被解釋爲value_regex
。這是做什麼的?那麼...
可以通過使用--add選項將多行添加到選項。如果 想要更新或取消設置可能發生在多個 行上的選項,則需要給出一個POSIX regexp value_regex。只有與正則表達式匹配的現有 值纔會更新或取消設置。
所以發生了什麼是git試圖更新配置選項alias.st
已經有值--stat
。由於沒有這樣的配置行,git爲alias.st
創建了第二個配置行。您可以通過運行確認:
git config --global --get-all alias.st
其中應該顯示alias.st
的兩個值。爲了解決這個問題,你應該運行:
git config --global --replace-all alias.st "diff --stat"
這應該讓你回到具有alias.st
一個配置行,並解決您的問題爲好。
您需要引用別名:'git config --global alias.st「diff --stat」'或'--stat'將被視爲「git config」選項,而不是「diff」。我不確定這是否會產生你描述的問題。 – meagar
@meagar你是對的。引用解決了這個問題。愚蠢的我。剛剛必須添加 - 替換 - 所有Git警告! – ricardomenzer
@meagar你想添加一個答案,所以我可以將其標記爲正確的?我的錯誤是'status'不需要引號,因爲它只有一個單詞。當我複製並粘貼它時,我並沒有意識到需要引用更復雜的別名。 – ricardomenzer