我正在尝试使用cvs2svn将CVS存储库转换为Git,并遵循on this page的指导。我执行了步骤7,但在运行git-move-refs.py时遇到错误:
Traceback (most recent call last):
File "../../cvs2svn-trunk/contrib/git-move-refs.py", line 23, in ?
from subprocess import Popen, PIPE, call
ImportError: No module named subprocess作为参考,该脚本如下所示:
usage = 'USAGE: %prog [options]'
import sys
import optparse
from subprocess import Popen, PIPE, call我不是Python专家,但是通过浏览网页可以看出,子进程是一个标准模块,对吧?我使用的是2.6.3版的源码构建的Python安装。要让这个脚本正常工作,我还缺少什么?
发布于 2012-10-13 04:25:11
我猜您在/usr/bin/python上有一个旧版本(2.4之前)的Python,来自您的发行版,而您编译的Python2.6是在其他地方(比如/usr/local/bin/python)。在/usr/bin之前,您的路径中有Python2.6可执行文件,所以当您从命令行执行python时,您会得到Python2.6。
然而,查看cvs2svn source code, git-move-refs.py的interpreter line是硬编码的
#!/usr/bin/python而不是#!/usr/bin/env python,这意味着当您运行脚本时,它将使用旧的Python。
作为一种解决方法,通过将脚本传递给Python 2.6解释器来运行该脚本:
user@host$ python /path/to/cvs2svn/contrib/git-move-refs.pyhttps://stackoverflow.com/questions/12866132
复制相似问题