代码之家  ›  专栏  ›  技术社区  ›  bouvard

为什么从SVN安装python couchdb实验分支的pip失败?

  •  0
  • bouvard  · 技术社区  · 16 年前

    我正在为一个项目设置fabric/virtualenv/pip自动部署,我需要安装最新的python couchdb实验分支。当然,我把它放在我的PIP需求文件中,比如:

    -e svn+http://couchdb-python.googlecode.com/svn/branches/experimental/httplib@195#egg=CouchDB-dev_r195
    

    但是,当我运行部署时,会收到以下错误和跟踪:

    [192.168.1.200] out: Obtaining CouchDB from svn+http://couchdb-python.googlecode.com/svn/branches/experimental/httplib/#egg=CouchDB (from -r requirements.txt (line 1))
    [192.168.1.200] out:   Checking out http://couchdb-python.googlecode.com/svn/branches/experimental/httplib/ to ./src/couchdb
    [192.168.1.200] out:   Error [Errno 2] No such file or directory while executing command svn checkout -q http://couchdb-python.googlecode.com/svn/branches/experimental/httplib/ /home/sk/votersdaily/src/couchdb
    [192.168.1.200] out: Exception:
    [192.168.1.200] out: Traceback (most recent call last):
    [192.168.1.200] out:   File "/usr/local/lib/python2.6/dist-packages/pip-0.6.1-py2.6.egg/pip.py", line 482, in main
    [192.168.1.200] out:     self.run(options, args)
    [192.168.1.200] out:   File "/usr/local/lib/python2.6/dist-packages/pip-0.6.1-py2.6.egg/pip.py", line 675, in run
    [192.168.1.200] out:     requirement_set.install_files(finder, force_root_egg_info=self.bundle)
    [192.168.1.200] out:   File "/usr/local/lib/python2.6/dist-packages/pip-0.6.1-py2.6.egg/pip.py", line 2409, in install_files
    [192.168.1.200] out:     req_to_install.update_editable(not self.is_download)
    [192.168.1.200] out:   File "/usr/local/lib/python2.6/dist-packages/pip-0.6.1-py2.6.egg/pip.py", line 1970, in update_editable
    [192.168.1.200] out:     vcs_backend.obtain(self.source_dir)
    [192.168.1.200] out:   File "/usr/local/lib/python2.6/dist-packages/pip-0.6.1-py2.6.egg/pip.py", line 3420, in obtain
    [192.168.1.200] out:     ['svn', 'checkout', '-q'] + rev_options + [url, dest])
    [192.168.1.200] out:   File "/usr/local/lib/python2.6/dist-packages/pip-0.6.1-py2.6.egg/pip.py", line 4320, in call_subprocess
    [192.168.1.200] out:     cwd=cwd, env=env)
    [192.168.1.200] out:   File "/usr/lib/python2.6/subprocess.py", line 621, in __init__
    [192.168.1.200] out:     errread, errwrite)
    [192.168.1.200] out:   File "/usr/lib/python2.6/subprocess.py", line 1126, in _execute_child
    [192.168.1.200] out:     raise child_exception
    [192.168.1.200] out: OSError: [Errno 2] No such file or directory
    

    我知道的是:

    • 该错误与找不到setup.py有关,因为文件从未下载。它似乎拒绝创建路径/home/sk/votersdayly/src/couchdb,但对于其他包,它总是根据需要创建此路径。
    • 我既可以作为根用户运行,也可以作为本地用户运行,但失败的是相同的。
    • 如果我手动创建目录,那么它会给出一个提示,告诉我该目录当前不是SVN repo,并询问我是否要覆盖它。如果我把它擦掉了,它仍然不签回购协议。
    • 我重新安装了pip并重新创建了virtualenv,错误也被复制了。
    • 我可以成功地在本地工作站(在virtualenv中)上执行这个pip安装。

    建议?我知道这一定是某种库或权限冲突,但我似乎无法确定,

    谢谢。

    1 回复  |  直到 16 年前
        1
  •  1
  •   bouvard    16 年前

    根据JohnPaulett的评论——您必须确实在服务器上安装了Subversion才能在服务器上执行它。

    如果可能的话,我想把鸡蛋送到脸上冷冻。

    推荐文章