在ReviewBoard中处理多个SVN用户

在ReviewBoard中处理多个SVN用户,svn,ubuntu,tortoisesvn,review-board,Svn,Ubuntu,Tortoisesvn,Review Board,我们最近在与SVN存储库相同的Ubuntu服务器上设置了ReviewBoard 2.0.11,但是我在配置ReviewBoard以处理SVN中的项目时遇到了一个问题 在RB中存储库信息的路径部分下,我必须提供完整的路径:svn+ssh://lara@buggy/data/svn/TestProject并在字段中输入用户名和密码,否则会收到一条错误消息,告诉我该位置没有存储库 当我发出命令rbt post并成功登录时,我遇到消息“ERROR:ERROR validating diff”无法解析指定

我们最近在与SVN存储库相同的Ubuntu服务器上设置了ReviewBoard 2.0.11,但是我在配置ReviewBoard以处理SVN中的项目时遇到了一个问题

在RB中存储库信息的路径部分下,我必须提供完整的路径:
svn+ssh://lara@buggy/data/svn/TestProject
并在字段中输入用户名和密码,否则会收到一条错误消息,告诉我该位置没有存储库

当我发出命令
rbt post
并成功登录时,我遇到消息
“ERROR:ERROR validating diff”无法解析指定的diff文件(HTTP 400,API ERROR 224)

但是,当我只调用
rbt diff
时,它将显示与我期望的完全相同的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)
RBTools 0.7.2 >>>Python 2.7.6(默认值,2013年11月10日,19:24:18)[MSC v.1500 32位(英特尔)] >>>在Windows-7-6.1.7601-SP1上运行 >>>Home=C:\Users\Anna\AppData\Roaming >>>当前目录=C:\Users\Anna\Desktop\b >>>正在检查Subversion存储库。。。 >>>正在运行:svn信息--非交互式 >>>正在运行:diff--version >>>正在运行:svn--version-q >>>存储库信息:路径:svn+ssh://anna@buggy/data/svn/TestProject,基本路径:/,支持变更集:False >>>向发出HTTP GET请求http://buggy/api/ >>>向发出HTTP GET请求http://buggy/api/repositories/ >>>向发出HTTP GET请求http://buggy/api/repositories/3/info/ >>>获取API错误210(HTTP代码500):获取此存储库的扩展信息时出错。 >>>错误数据:{u'stat':u'fail',u'err':{u'msg':u'获取此存储库的扩展信息时出错。',u'code':210} 回溯(最近一次呼叫最后一次): 文件“C:\Program Files\RBTools\bin\..\Python27\Scripts\rbt script.py”,第8行,在 加载入口点('RBTools==0.7.2','console脚本','rbt')() 文件“C:\Program Files\RBTools\Python27\lib\site packages\RBTools-0.7.2-py2.7.egg\RBTools\commands\main.py”,第133行,主目录 command.run_from_argv([RB_MAIN,command_name]+args) 文件“C:\Program Files\RBTools\Python27\lib\site packages\RBTools-0.7.2-py2.7.egg\RBTools\commands\\uuuuuu init\uuuuuuu.py”,第555行,从\u argv运行 退出代码=self.main(*args)或0 文件“C:\Program Files\RBTools\Python27\lib\site packages\RBTools-0.7.2-py2.7.egg\RBTools\commands\post.py”,主目录第603行 repository\u info=repository\u info.find\u server\u repository\u info(api\u root) 文件“C:\Program Files\RBTools\Python27\lib\site packages\RBTools-0.7.2-py2.7.egg\RBTools\clients\svn.py”,第762行,位于“查找服务器\u存储库\u信息”中 info=repository.get_info() 文件“C:\Program Files\RBTools\Python27\lib\site packages\RBTools-0.7.2-py2.7.egg\RBTools\api\resource.py”,第146行,在 self._get_url(url,**kwargs))) 文件“C:\Program Files\RBTools\Python27\lib\site packages\RBTools-0.7.2-py2.7.egg\RBTools\api\decorators.py”,第27行,在请求\u方法中 *args,**kwargs) 文件“C:\Program Files\RBTools\Python27\lib\site packages\RBTools-0.7.2-py2.7.egg\RBTools\api\transport\sync.py”,第65行,在执行请求方法中 返回自我。执行请求(请求) 文件“C:\Program Files\RBTools\Python27\lib\site packages\RBTools-0.7.2-py2.7.egg\RBTools\api\transport\sync.py”,第74行,在执行请求中 rsp=self.server.make_请求(request) 文件“C:\Program Files\RBTools\Python27\lib\site packages\RBTools-0.7.2-py2.7.egg\RBTools\api\request.py”,第536行,在make\u请求中 self.process_错误(e.code,e.read()) 文件“C:\Program Files\RBTools\Python27\lib\site packages\RBTools-0.7.2-py2.7.egg\RBTools\api\request.py”,第509行,进程中出错 rsp['err']['msg']) rbtools.api.errors.APIRROR:获取此存储库的扩展信息时出错。(HTTP 500,API错误210) 我假设这是因为路径中的用户名不匹配?有人对如何解决这个问题有什么建议吗


如何配置ReviewBoard,以便安全SVN存储库的所有用户都能够将其差异发布到ReviewBoard

您遇到的问题是reviewboard需要它自己唯一的公共ssh密钥来访问您的SVN repo。您需要为reviewboard添加一个新的SSH用户,并将其添加到您的SSH允许列表中。 一旦设置好,您只需使用“rbt post”命令,该命令将提示您输入用于访问reviewboard站点的用户名+密码。所以每个用户不需要SSH密钥,只有一个用于审查委员会。
我希望这有帮助?

谢谢!我真的应该知道这是审查委员会方面的权限问题,一旦我看到这条消息
注意:如果您的提供商或存储库需要SSH密钥进行访问,您可以单击右侧的“Show SSH Public key”我也花了一些时间来安装,很高兴我能帮上忙:)