多个版本的Mercurial已安装 - 如何设置其中一个为默认版本

2 投票
2 回答
804 浏览
提问于 2025-04-16 13:01

我在我的Mac OS 10.6.6上安装了两个版本的Mercurial,现在我想默认使用其中一个。

我通过这个链接下载了Mercurial的二进制文件并安装。我一直在终端里用hg命令运行Mercurial,因为它安装在

/Library/Python/2.6/site-packages

尽管我大多数时候使用的是Python 2.7。

顺便提一下,另一个Python 2.6的site-packages目录在

/System/Library/Frameworks/Python.framework/Versions/2.6/Extras/lib/python2.6/si­te-packages

里没有安装Mercurial。

使用2.6版本的Mercurial,而大多数时候又用2.7做其他事情,最终让我遇到了麻烦。(可以参考这个讨论。)

后来我为Python 2.7在

/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/

中安装了Mercurial(是通过pip安装的,而不是从网站下载的二进制文件),但我不确定怎么设置让hg命令默认使用哪个Mercurial。现在它还是在用原来的2.6版本,我想从现在开始使用更新的2.7版本。

2 个回答

1

没关系,刚才我花了几分钟到处找 hg 这个命令。

我在这里找到了它:

/usr/local/bin/hg

这个命令是之前从网站上下载的二进制文件放在那里的,

/Library/Frameworks/Python.framework/Versions/2.7/bin/hg

而这个是我今天用 pip 安装时创建的。

所以我把 /usr/local/bin/hg 重命名为 /usr/local/bin/hg-2.6,然后把 /usr/local/bin/hg 链接到了 /Library/Frameworks/Python.framework/Versions/2.7/bin/hg

1

使用Virtualenv会是一个很好的解决方案。

http://stevelosh.com/blog/2009/06/how-to-contribute-to-mercurial/

看看这个链接。可以不看贡献的部分。只需要创建一个虚拟环境,然后不要使用ln -s命令,而是在里面执行pip install mercurial。其他的应该就能正常工作了。

撰写回答