Most people seem to recommend using source
for reloading .zshrc
. Why?
First I tried out source ~/.zshrc
. But it resulted in a compinit
error (at reload, not for new shell instances at first .zshrc
load).
My reload alias is now:
alias zsh-reload="exec zsh"
instead of:
source ~/.zshrc
The reason for this is that my previous reload method (source
) triggered a compinit error;
zsh compinit: insecure directories, run compaudit for list.
Ignore insecure directories and continue [y] or abort compinit [n]?
So I'm now doing exec
because I believie it ensures the previous environment doesn't pollute the new one.
- What are the downsides of using the
exec
method? - Is there an explicit reason for that you're doing
exec
orsource
? - Could
exec
in theory cause unexpected problems compared to thesource
method?