我想升级 OpenSUSE 盒子上的 mercurial 版本。
这就是我所拥有的
test99:〜/ TEST_AREA / hgplayarea#hg --version
Mercurial Distributed SCM (version 1.5)
Copyright (C) 2005-2010 Matt Mackall <[email protected]> and others
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
test99:〜/ TEST_AREA / hgplayarea#
-
test99:~# cat /etc/SuSE-release
openSUSE 11.3 (i586)
VERSION = 11.3
测试99:~#
-
我尝试使用“easy_install”在这台机器上升级 mercurial
test99:~/TEST_AREA/hgplayarea # easy_install -U mercurial
上述命令的输出如下:
Searching for mercurial
Reading http://pypi.python.org/simple/mercurial/
Reading http://mercurial.selenic.com/
Reading http://www.selenic.com/mercurial
Reading http://mercurial.selenic.com/release/
Best match: mercurial 2.3.1
Downloading http://mercurial.selenic.com/release/mercurial-2.3.1.tar.gz
Processing mercurial-2.3.1.tar.gz
Running mercurial-2.3.1/setup.py -q bdist_egg --dist-dir /tmp/easy_install-jNQkmu/mercurial-2.3.1/egg-dist-tmp-riveHL
zip_safe flag not set; analyzing archive contents...
mercurial.lsprof: module references __file__
mercurial.commands: module references __file__
mercurial.extensions: module references __file__
mercurial.help: module references __file__
mercurial.util: module references __file__
mercurial.templater: module references __file__
mercurial.i18n: module references __file__
hgext.mq: module references __file__
Adding mercurial 2.3.1 to easy-install.pth file
Installing hg script to /usr/local/bin
Installed /usr/local/lib/python2.6/site-packages/mercurial-2.3.1-py2.6-linux-i686.egg
Processing dependencies for mercurial
Finished processing dependencies for mercurial
现在,在升级之后,我运行:hg --version --或任何其他 hg 命令。我收到错误:
hg——版本
Traceback (most recent call last):
File "/usr/bin/hg", line 25, in <module>
mercurial.util.set_binary(fp)
File "/usr/local/lib/python2.6/site-packages/mercurial-2.3.1-py2.6-linux-i686.egg/mercurial/demandimport.py", line 87, in __getattribute__
return getattr(self._module, attr)
AttributeError: 'module' object has no attribute 'set_binary'
汞克隆http://test99.tsh.company.com/hg/TestHgRepo1/星回购
Traceback (most recent call last):
File "/usr/bin/hg", line 25, in <module>
mercurial.util.set_binary(fp)
File "/usr/local/lib/python2.6/site-packages/mercurial-2.3.1-py2.6-linux-i686.egg/mercurial/demandimport.py", line 87, in __getattribute__
return getattr(self._module, attr)
AttributeError: 'module' object has no attribute 'set_binary'
(reverse-i-search)`su': hg ^Cmmary
关于如何卸载它或者安装正确的版本,有什么帮助吗?
我这样做是为了看看是否可以让 Mercurial_Keyring 和 acl 扩展正常工作......
我使用“easy_install”是因为我想安装最新版本的 mercurial。在 OpenSUSE 上,当我使用“yast -i mercurial”时,它会尝试降级 Mercurial 1.2.xx 版本,而不是像 easy_install 那样降级最新版本。我最初使用“yast”方式安装 mercurial。
尝试了以下更改 - 但不起作用:
https://developers.kilnhg.com/Code/Kiln/TortoiseHg/TortoiseHg/History/9add2d4511ce
hg——版本
File "/usr/bin/hg", line 25
_setbinary(fp)
^
答案1
这样做是为了解决它。
- yast——删除 mercurial
- yast——删除 python
- yast -i python-nautilus python-gtk python-gtk-devel python-pysvn dbus-1-python dbus-1-python-devel subversion meld
- yast -i mercurial
现在,我正在做:
hg——版本
Mercurial Distributed SCM (version 2.3.1)
(see http://mercurial.selenic.com for more information)
Copyright (C) 2005-2012 Matt Mackall and others
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
python --version
Python 2.6.5
奇怪??:1. yast -i mercurial(安装过程中显示正在执行 mercurial 1.2.xx 或 1.3.xx)但 hg --version 显示不同的版本。“easy_install mercurial”确实安装了 2.3.x,但后来我使用 yast 将其删除。Yast 安装了 1.xx,最后使用“hg --version”上面显示的工作版本是 2.3.1
即使在我运行 yast --remove <...> (mercurial/python).... 之后,我仍然能够浏览 http://test99:443/hg
链接,它显示了我所有的存储库,并且仍然显示它..我在执行 yast --remove 之前创建的存储库。