2010-03-04 5 views
2

로컬 SCN 저장소 (모든 내역 포함)를 Mercurial로 변환하려고합니다. 저는 Mac (10.6.2)에서 작업하고 있습니다. 따라서 Macports를 패키지 관리 도구로 사용하고 있습니다. Python 바인딩을 사용하여 Mac에서 SVN을 Mercurial로 변환하면 작동하지 않습니다.

내가 가진 변환 시작 :

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 [email protected] 
** 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 

감사의 감사는 도움!

답변

1

확인. 알았다.

나는이 python 버전이 여전히 설치되어 스크립트를 실행하여 선택되었다는 Macports의 python26 설치에 대한 의견을 간과했습니다. 문제는 필자가 여전히 Snow Leopard의 파이썬에서 작업했다는 것입니다. 따라서 python26 설치를 추가적으로 실행했습니다.

sudo ports install python-select 
sudo python_select python26 

다시 시도했습니다. 변환이 즉시 실행됩니다. bolidor의 질문과 대답에 확장

+2

하는 'sudo는 포트 python_select'를 설치하는 것 그 (선택 사항)

  • 스위치를 다시 파이썬를 수행 –

  • 6

    는 :

    1. 를 설치

      당신은 서브 버전과 의욕에서 저장소를 변환하는 데 문제가있는 경우, 당신은 MacPorts를을 사용하여, 당신은 아마 할 것 서브 버전 파이썬 바인딩 :

      sudo port install subversion-python26bindings 
      
    2. 스위치 MacPorts를 파이썬에 :

      sudo port install python_select 
      sudo python_select python26 
      
    3. 전환

      sudo python_select python26-apple 
      
    관련 문제