我们最近在与SVN存储库相同的Ubuntu服务器上设置了ReviewBoard 2.0.11,但是我在配置ReviewBoard以处理SVN中的项目时遇到了问题。
在RB中的存储库信息的Path部分下,我必须提供完整路径:svn+ssh://lara@buggy/data/svn/TestProject
并将我的用户名和密码放在字段中,否则我会收到一条错误消息,告诉我没有存储库在那个地方。
当我发出命令rbt post
并成功登录时,我收到消息"ERROR: Error validating diff" The specified diff file could not be parsed (HTTP 400, API Error 224)
但是,当我打电话给rbt diff
时,它会完全按照我的预期向我展示差异,这个错误是什么意思?
现在更紧迫的问题是,当另一个用户尝试运行rbt post
命令时,这是产生的输出:
>>> RBTools 0.7.2
>>> Python 2.7.6 (default, Nov 10 2013, 19:24:18) [MSC v.1500 32 bit (Intel)]
>>> Running on Windows-7-6.1.7601-SP1
>>> Home = C:\Users\Anna\AppData\Roaming
>>> Current directory = C:\Users\Anna\Desktop\b
>>> Checking for a Subversion repository...
>>> Running: svn info --non-interactive
>>> Running: diff --version
>>> Running: svn --version -q
>>> repository info: Path: svn+ssh://anna@buggy/data/svn/TestProject, Base path: /, Supports changesets: False
>>> Making HTTP GET request to http://buggy/api/
>>> Making HTTP GET request to http://buggy/api/repositories/
>>> Making HTTP GET request to http://buggy/api/repositories/3/info/
>>> Got API Error 210 (HTTP code 500): There was an error fetching extended information for this repository.
>>> Error data: {u'stat': u'fail', u'err': {u'msg': u'There was an error fetching extended information for this repository.', u'code': 210}}
Traceback (most recent call last):
File "C:\Program Files\RBTools\bin\..\Python27\Scripts\rbt-script.py", line 8, in <module>
load_entry_point('RBTools==0.7.2', 'console_scripts', 'rbt')()
File "C:\Program Files\RBTools\Python27\lib\site-packages\rbtools-0.7.2-py2.7.egg\rbtools\commands\main.py", line 133, in main
command.run_from_argv([RB_MAIN, command_name] + args)
File "C:\Program Files\RBTools\Python27\lib\site-packages\rbtools-0.7.2-py2.7.egg\rbtools\commands\__init__.py", line 555, in run_from_argv
exit_code = self.main(*args) or 0
File "C:\Program Files\RBTools\Python27\lib\site-packages\rbtools-0.7.2-py2.7.egg\rbtools\commands\post.py", line 603, in main
repository_info = repository_info.find_server_repository_info(api_root)
File "C:\Program Files\RBTools\Python27\lib\site-packages\rbtools-0.7.2-py2.7.egg\rbtools\clients\svn.py", line 762, in find_server_repository_info
info = repository.get_info()
File "C:\Program Files\RBTools\Python27\lib\site-packages\rbtools-0.7.2-py2.7.egg\rbtools\api\resource.py", line 146, in <lambda>
self._get_url(url, **kwargs)))
File "C:\Program Files\RBTools\Python27\lib\site-packages\rbtools-0.7.2-py2.7.egg\rbtools\api\decorators.py", line 27, in request_method
*args, **kwargs)
File "C:\Program Files\RBTools\Python27\lib\site-packages\rbtools-0.7.2-py2.7.egg\rbtools\api\transport\sync.py", line 65, in execute_request_method
return self._execute_request(request)
File "C:\Program Files\RBTools\Python27\lib\site-packages\rbtools-0.7.2-py2.7.egg\rbtools\api\transport\sync.py", line 74, in _execute_request
rsp = self.server.make_request(request)
File "C:\Program Files\RBTools\Python27\lib\site-packages\rbtools-0.7.2-py2.7.egg\rbtools\api\request.py", line 536, in make_request
self.process_error(e.code, e.read())
File "C:\Program Files\RBTools\Python27\lib\site-packages\rbtools-0.7.2-py2.7.egg\rbtools\api\request.py", line 509, in process_error
rsp['err']['msg'])
rbtools.api.errors.APIError: There was an error fetching extended information for this repository. (HTTP 500, API Error 210)
我认为这是因为路径中的用户名不匹配?有没有人对如何解决这个问题有任何建议?
如何配置ReviewBoard,以便安全SVN存储库的所有用户都能够将他们的差异发布到ReviewBoard?
答案 0 :(得分:1)
您遇到的问题是,审核委员会需要自己独特的公共ssh密钥才能访问您的SVN仓库。您需要为审核板添加新的SSH用户并添加到SSH允许列表中。 一旦到位,您只需使用“rbt post”命令,该命令将提示您输入用于访问评论板网站的用户名+密码。因此,每个用户不需要SSH密钥,只有一个用于审查委员会。 我希望这有帮助吗?