我安裝了 oh-my-zsh 以使終端使用更容易一些。但讓我煩惱的一件事是它添加的大量別名,如“ga”、“gap”、“gcmsg”、“_”,它們比原始命令更難記住,並且污染了命令哈希表。
那麼有沒有辦法完全停用別名呢?或清除所有別名的方法,以便我可以將其放入我的.zshrc
?
答案1
如果您不想要 oh-my-zsh 的任何別名,但想保留其他別名,則可以在載入 oh-my-zsh 之前儲存別名
save_aliases=$(alias -L)
並隨後恢復它們。
eval $save_aliases; unset save_aliases
如果你想在某個時刻刪除所有別名,可以使用unalias -m '*'
(remove all aliases matches *
,即全部)。
如果您絕對討厭別名並且不想看到別名,則可以使alias
內建命令不起作用:unalias -m '*'; alias () { : }
。或者您可以簡單地使用 關閉別名擴充setopt no_aliases
。
答案2
您可以unalias
與-m
選項一起使用:
unalias -m '*'
刪除所有定義的別名
答案3
如果您只想刪除 git 別名,我推薦以下兩個選項之一:
~/.oh-my-zsh/plugins/git/git.plugin.zsh
透過刪除底部的所有別名進行更改製作該插件的副本(建議位置:)
~/.oh-my-zsh/custom/plugins/git-noalias/git-noalias.plugin.zsh
,編輯該副本以不包含別名,然後將您的~/.zshrc
to do更改plugins=(git-noalias)
為plugins=(git)
.
這將為您提供該插件的所有好處(我不確定它們是什麼,但它們可能與 Git 資料夾中顯示的自動 Git 狀態/分支資訊有關),而無需別名。
答案4
簡單方法: 如果問題是多行 git aliases 註解掉你想要的別名停用
nano ~/.oh-my-zsh/plugins/git/git.plugin.zsh
註解掉不需要的行#,要更快地使用 nano,請使用代替功能
alias g='git'
#alias ga='git add'
#alias gaa='git add --all'
...