我通过 安装了 git apt-get
,但发现版本太旧了,所以我从源代码安装 git最终结果令人费解:
$ git --version
git version 1.7.0.4
$ which git
/usr/local/bin/git
$ /usr/local/bin/git --version
git version 1.7.6
看来这which
是在骗我……这似乎不太可能。这里到底发生了什么,我如何才能直接调用 git 来运行正确的版本?
答案1
which
是在说实话。你的壳在骗你。
git is hashed (/usr/bin/git)
意味着你的 shell 已经缓存了“git”的这个位置,并且正在使用缓存的路径,而不是再次搜索 $PATH。使用hash -r
清除缓存并让 shell 在 $PATH 中搜索新的 git/usr/local/bin/git
答案2
你在 shell 中为 git 设置了别名吗?
$ alias git="/bin/echo This is not the git you are looking for"
$ which git
/usr/bin/git
$ git --version
This is not the git you are looking for --version
$ /usr/bin/git --version
git version 1.7.4.1
$ type git
git is aliased to `/bin/echo This is not the git you are looking for'
$ unalias git
$ type git
git is /usr/bin/git
$ git --version
git version 1.7.4.1