简体   繁体   English

在ReviewBoard中处理多个SVN用户

[英]Handling multiple SVN users within ReviewBoard

We recently set up ReviewBoard 2.0.11 on the same Ubuntu server as our SVN repository, however I'm having an issue configuring ReviewBoard to work with projects in SVN. 我们最近在与SVN信息库相同的Ubuntu服务器上设置了ReviewBoard 2.0.11,但是在配置ReviewBoard以与SVN中的项目一起使用时遇到了问题。

Under the Path section of the Repository Information in RB, I have to supply the full path: svn+ssh://lara@buggy/data/svn/TestProject and put my username and password in the fields, otherwise I get an error message telling me that there is no repository at that location. 在RB中的“存储库信息”的“路径”部分下,我必须提供完整路径: svn+ssh://lara@buggy/data/svn/TestProject并将我的用户名和密码放在字段中,否则会收到错误消息告诉我该位置没有存储库。

When I issue the command rbt post and log in successfully, I am met with the message "ERROR: Error validating diff" The specified diff file could not be parsed (HTTP 400, API Error 224) 当我发出命令rbt post并成功登录时,遇到消息"ERROR: Error validating diff" The specified diff file could not be parsed (HTTP 400, API Error 224)

However, when I just call rbt diff , it will show me the diff exactly as I expect, what is this error indicative of? 但是,当我仅调用rbt diff ,它将完全按照我的期望显示差异,此错误表示什么?

The more pressing issue for now, is the fact that when another user tries to run the rbt post command, this is the output that is produced: 目前更紧迫的问题是,当另一个用户尝试运行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)

I'm assuming that this is because the usernames in the path don't match? 我假设这是因为路径中的用户名不匹配? Does anyone have any advice on how to fix this issue? 有人对如何解决此问题有任何建议吗?

How can you configure ReviewBoard so that all users of a secure SVN repository are able to post their diffs to ReviewBoard? 如何配置ReviewBoard,以便安全SVN存储库的所有用户都可以将其差异发布到ReviewBoard?

This problem your having is that reviewboard requires its own unique public ssh key to access your SVN repo. 您遇到的问题是,审阅板需要其自己的唯一公共ssh密钥才能访问您的SVN存储库。 you will need to add a new SSH user for reviewboard and add to your SSH allowed list. 您将需要添加一个新的SSH用户进行审核,并将其添加到SSH允许列表中。 Once this is in place, you simply use the "rbt post" command that will prompt you to enter your username + password that you use to access the reviewboard site. 安装到位后,您只需使用“ rbt post”命令,该命令将提示您输入用于访问审阅网站的用户名和密码。 So each user doesnt require an SSH key, only one for review board. 因此,每个用户不需要SSH密钥,只有一个用于评审委员会。 I hope this helps? 我希望这有帮助?

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM