我有 XCode 3.2.6,其中包括 SVN 1.6.x。我刚刚安装了 MacPorts 并获得了 1.7.x 的 subversion,但是当我运行svn --version
它时显示 1.6.17。
我在 Xcode 之后安装了 MacPorts,为什么 Scode#s 版本优先?
如果您svn
从 shell 命令行运行(例如在终端窗口中),您需要确保bin
MacPorts 安装东西的目录(默认为/opt/local/bin
)位于 Apple 安装版本的位置(/usr/bin
)之前。这是由进程环境变量控制的PATH
。
$ export PATH=/opt/local/bin/:$PATH
要使此更改永久生效,请将该行添加到您的 shell 启动文件中,例如.bash_profile
.
$ echo $PATH
/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin
$ which svn
/usr/bin/svn$ svn --version
svn, version 1.6.17 (r1128011)
compiled Feb 1 2012, 15:04:34
[...]
$ export PATH=/opt/local/bin:$PATH
$ echo $PATH
/opt/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin
$ which svn
/opt/local/bin/svn
$ svn --version
svn, version 1.7.4 (r1295709)
compiled Mar 8 2012, 19:29:25
[...]
我有同样的问题(svn --version
显示 1.6.x),即使/opt/local/bin
在路径的前面,然后which svn
返回/opt/local/bin/svn
,运行/opt/local/bin/svn --version
显示 1.7.x。
对我来说,重新启动终端修复了它。