I have an alias which is predefined by an oh-my-zsh plugin.
-> % alias gcm
gcm='git checkout master'
I'd like to remove it, i.e. I'd like alias | pcregrep "\bgcm\b" return 1.
I've tried with alias gcm='' but after that the alias is still existent.
Asked
Active
Viewed 3.1k times
53
Gabor Marton
- 687
- 1
- 6
- 8
4 Answers
89
You can remove an alias simply using:
$ unalias gcm
ssssteffff
- 2,389
- 16
- 17
-
1will this unalias it forever or only for this session? – meteors Apr 25 '15 at 12:41
-
1@meteors Each session starts with no aliases, then they get created via your scripts - so, it depends on what you have in them. – nomadcoder Jul 26 '15 at 10:04
-
1Note that if you have a global alias, you need to quote the alias name like so: `unalias 'gcm'`. Otherwise, the alias is getting expanded before executing the `unalias` command. – Lukas Juhrich Mar 12 '20 at 16:27
11
This other answer is correct but if you're adding the unalias gcm line to your .zshrc file, it must be done AFTER oh-my-zsh is sourced, or else it will be overwritten by the zsh defaults.
It would look something like the below in your .zshrc file:
source $ZSH/oh-my-zsh.sh
# must unalias all ZSH defaults here AFTER we source the above
unalias gcm
alias gcm="whatever you want"
Kamil Maciorowski
- 69,815
- 22
- 136
- 202
Ollie Murphy
- 211
- 2
- 2
-
1Since the last alias wins by default, the `unalias` line in this example is superfluous. – nietonfir Jun 03 '22 at 12:27
1
For removing git aliases in zsh git plugin you can comment them out in ~/.oh-my-zsh/plugins/git/git.plugin.zsh which is default installation location for git plugin
1UC1F3R616
- 111
- 1