3

我的系统上有一个 SVN 版本,位于 /usr/bin/svn。这对于某些存储库来说太旧了,所以我在 /home/user/built/bin/svn 中编译了一个新版本,它工作正常。我将它添加到我的 PATH 中,所以它应该首先运行。

打字

which svn

生产

/home/user/built/bin/svn

但是打字

svn --version

表明我们仍在使用旧版本。如果我跑

/home/user/built/bin/svn --version

然后显示正确的版本。

由于自定义版本在我的 $PATH 中是第一个,并且它首先列出了为什么在我运行 svn 时会调用旧版本?我认为哪个使用您的 $PATH 以与 shell 相同的方式查找可执行文件?

4

3 回答 3

4

利用

type svn

弄清楚(a)它是什么,(b)它在哪里或它的定义是什么。还要检查 PATH 是否真的包含您认为的内容

echo $PATH
于 2011-01-05T16:43:19.557 回答
1

类型给出:

type svn
svn is hashed (/usr/bin/svn)

跑步

hash -r 

现在已经解决了问题!

归功于 OP

于 2021-01-21T17:17:22.973 回答
0

您确定在路径中的其他地方没有指向 svn 的符号链接吗?

于 2011-01-05T16:32:03.190 回答