2

我尝试将本地 SCN 存储库(及其所有历史记录)转换为 Mercurial。我正在使用 Mac (10.6.2)。因此,我使用 Macports 作为包管理工具。

我开始转换:

hg convert file:// ´pwd´/calebsvn/ 

结果是,它开始正常工作,但过了一会儿,它停止了。那就是输出:

initializing svn wc 'calebsvn-wc'
** unknown exception encountered, details follow
** report bug details to http://mercurial.selenic.com/bts/
** or mercurial@selenic.com
** Mercurial Distributed SCM (version 1.4.2)
** Extensions loaded: convert
Traceback (most recent call last):
  File "/opt/local/bin/hg", line 27, in <module>
    mercurial.dispatch.run()
  File "/opt/local/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages/mercurial/dispatch.py", line 16, in run
    sys.exit(dispatch(sys.argv[1:]))
  File "/opt/local/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages/mercurial/dispatch.py", line 30, in dispatch
    return _runcatch(u, args)
  File "/opt/local/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages/mercurial/dispatch.py", line 46, in _runcatch
    return _dispatch(ui, args)
  File "/opt/local/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages/mercurial/dispatch.py", line 454, in _dispatch
    return runcommand(lui, repo, cmd, fullargs, ui, options, d)
  File "/opt/local/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages/mercurial/dispatch.py", line 324, in runcommand
    ret = _runcommand(ui, options, cmd, d)
  File "/opt/local/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages/mercurial/dispatch.py", line 505, in _runcommand
    return checkargs()
  File "/opt/local/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages/mercurial/dispatch.py", line 459, in checkargs
    return cmdfunc()
  File "/opt/local/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages/mercurial/dispatch.py", line 453, in <lambda>
    d = lambda: util.checksignature(func)(ui, *args, **cmdoptions)
  File "/opt/local/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages/mercurial/util.py", line 386, in check
    return func(*args, **kwargs)
  File "/opt/local/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages/hgext/convert/__init__.py", line 229, in convert
    return convcmd.convert(ui, src, dest, revmapfile, **opts)
  File "/opt/local/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages/hgext/convert/convcmd.py", line 368, in convert
    destc = convertsink(ui, dest, opts.get('dest_type'))
  File "/opt/local/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages/hgext/convert/convcmd.py", line 66, in convertsink
    return sink(ui, path)
  File "/opt/local/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages/hgext/convert/subversion.py", line 1004, in __init__
    xport = transport.SvnRaTransport(url=geturl(path))
NameError: global name 'transport' is not defined

我搜索了你的邮件列表,找到了在我的本地 python 安装中测试 svn 绑定的说明。正如您在以下输出中看到的那样,它们的工作原理:

$ python -c 'import svn.core; print svn.core.SVN_VER_MAJOR, svn.core.SVN_VER_MINOR'
1 6

作为附加信息,这里是我使用 MacPorts 安装的所有软件包的完整列表:

apr                            @1.3.12         devel/apr
apr                            @1.3.12         devel/apr
apr-util                       @1.3.9          devel/apr-util
bzip2                          @1.0.5          archivers/bzip2
cvs2svn                        @2.3.0          devel/cvs2svn
cyrus-sasl2                    @2.1.23         security/cyrus-sasl2
db46                           @4.6.21         databases/db46
expat                          @2.0.1          textproc/expat
fontconfig                     @2.8.0          graphics/fontconfig
freetype                       @2.3.12         print/freetype
gdbm                           @1.8.3          databases/gdbm
gettext                        @0.17           devel/gettext
gperf                          @3.0.4          devel/gperf
libiconv                       @1.13.1         textproc/libiconv
mercurial                      @1.4.2          devel/mercurial
ncurses                        @5.7            devel/ncurses
ncursesw                       @5.7            devel/ncursesw
neon                           @0.29.3         www/neon
openssl                        @0.9.8m         devel/openssl
openssl                        @0.9.8m         devel/openssl
pkgconfig                      @0.23           devel/pkgconfig
py26-hgsvn                     @0.1.7          python/py26-hgsvn
py26-setuptools                @0.6c11         python/py26-setuptools
py26-svn                       @1.7.0          python/py26-svn
python26                       @2.6.4          lang/python26
readline                       @6.1.000        devel/readline
serf                           @0.3.0          www/serf
sqlite3                        @3.6.22         databases/sqlite3
subversion                     @1.6.9          devel/subversion
tcl                            @8.5.8          lang/tcl
tk                             @8.5.8          x11/tk
Xft2                           @2.1.14         x11/Xft2
xorg-bigreqsproto              @1.1.0          x11/xorg-bigreqsproto
xorg-inputproto                @2.0            x11/xorg-inputproto
xorg-kbproto                   @1.0.4          x11/xorg-kbproto
xorg-libX11                    @1.3.3          x11/xorg-libX11
xorg-libXau                    @1.0.5          x11/xorg-libXau
xorg-libXdmcp                  @1.0.3          x11/xorg-libXdmcp
xorg-libXext                   @1.1.1          x11/xorg-libXext
xorg-libXScrnSaver             @1.2.0          x11/xorg-libXScrnSaver
xorg-renderproto               @0.11           x11/xorg-renderproto
xorg-scrnsaverproto            @1.2.0          x11/xorg-scrnsaverproto
xorg-util-macros               @1.6.0          x11/xorg-util-macros
xorg-xcmiscproto               @1.2.0          x11/xorg-xcmiscproto
xorg-xextproto                 @7.1.1          x11/xorg-xextproto
xorg-xf86bigfontproto          @1.2.0          x11/xorg-xf86bigfontproto
xorg-xproto                    @7.0.16         x11/xorg-xproto
xorg-xtrans                    @1.2.5          x11/xorg-xtrans
xrender                        @0.9.5          x11/xrender
zlib                           @1.2.3          archivers/zlib

感谢并感谢您的帮助!

4

2 回答 2

6

扩展bolidor的问答:

如果您在从 Subversion 和 Mercurial 转换存储库时遇到问题,并且您使用 MacPorts,您可能希望:

  1. 安装颠覆 python 绑定:

    sudo port install subversion-python26bindings
    
  2. 切换到 MacPorts python:

    sudo port install python_select
    sudo python_select python26
    
  3. 进行转换

  4. 切换回你的python(可选)

    sudo python_select python26-apple
    
于 2010-06-12T21:31:25.150 回答
1

行。我得到了它。

我忽略了用 Macports 安装 python26 的注释,这个 python 版本仍然需要通过安装和执行脚本来选择。问题是我仍然在 Snow Leopard 上使用原始 Python。因此,我额外执行了 python26 安装

sudo ports install python-select
sudo python_select python26

并再次尝试转换。然后转换立即生效。

于 2010-03-05T10:04:18.027 回答