I use Oh My Zsh and I highly recommend it. However, it sets some aliases that I don't want. In particular, there's a plugin called
git.plugin.zsh (located in
~/.oh-my-zsh/plugins/git/git.plugin.zsh) that interfers with a global binary I have in
$PATH. So when I start a shell the executable
▶ which gg gg: aliased to git gui citool
/usr/local/bin/gg which is the one I want to execute when I type
gg. To unset that I can run...:
▶ unset gg ▶ which gg /usr/local/bin/gg
To override it "permanently", I added, to the end of
# This unsets ~/.oh-my-zsh/plugins/git/git.plugin.zsh # So my /usr/local/bin/gg works instead unalias gg
Now whenever I start a new terminal, it defaults to the
Thank you for this!
I was trying to do the same thing with a different command (git push), and at first "unalias" wasn't working, but I didn't want to put it at the end of my .zshrc because then it would be far from the point where the alias is set.
As it turns out, the call to unalias merely has to be after "source $ZSH_DIR/oh-my-zsh.sh", because that is when the plugins are loaded (and the aliases set up).
Thanks, you cannot unset an alias, but a function.
in $HOME/.oh-my-zsh set this value to 1 instead of 0