我尝试将reviewboard
与SVN
一起使用。办公室中的其他人已经完成了他们的系统设置,并且能够发布(第一次使其工作的VM的副本)。我已经将我的系统设置与他们的系统设置进行了比较,就我所知,事情看起来是一样的。
当我运行rbt post
命令时,我得到:
执行命令失败:[' svn',' diff',' - diff-cmd = diff', ' - notice-ancestry',' -r',' BASE'] ['索引:main.cpp \ n', ' ============================================== =========== ========== \ n','用法:差异[选项] \ n',' \ n','显示不同之处统一之间 diff \ n',"格式。选项是&if; svn描述的iff扩展名 帮助差异,使用' - '单独表示没有更多的选择 按照。\ n"," svn:E200012:'差异'返回2 \ n"]
我已经在我的系统路径中创建了我的svn客户端和gnu diff前两项内容:C:\Program Files (x86)\GnuWin32\bin;C:\Program Files (x86)\CollabNet
我正在运行Windows 8计算机。
阅读https://groups.google.com/forum/#!topic/reviewboard/ylyfqMghJMM看起来其他人已经添加了同样的问题,但似乎没有关于如何解决问题的准确解释。
一些细节。 svn --version
给出:
svn,版本1.8.9(r1591380)编译于2014年6月6日,03:53:07 x86的微软windows5.1.2600
版权所有(C)2014 Apache Software Foundation。这个软件 由许多人的贡献组成;请参阅NOTICE文件 更多信息。 Subversion是开源软件,见 http://subversion.apache.org/
以下存储库访问(RA)模块可用:
- ra_svn:使用svn网络协议访问存储库的模块。
- 使用Cyrus SASL身份验证
- 处理' svn'方案
- ra_local:用于访问本地磁盘上的存储库的模块。
- 处理'文件'方案
- ra_serf:使用serf通过WebDAV协议访问存储库的模块。
- 使用serf 1.3.4
- 处理' http'方案
- 处理' https'方案
diff --version
给出:
diff(GNU diffutils)2.8.7由Paul Eggert,Mike Haertel,David撰写 Hayes,Richard Stallman和Len Tower。
版权所有(C)2004 Free Software Foundation,Inc。这是免费的 软件;查看复制条件的来源。没有 保证;甚至不适用于特定的适销性或适用性 用途
关于我应该检查什么或者我缺少什么的任何想法或想法?我也要发布到谷歌小组,看他们是否有任何想法,如果他们有解决方案,我也会更新这篇文章。
尝试了其他疑难解答步骤:
我发现了一个帖子,我试图解决问题https://subversion.open.collab.net/ds/viewMessage.do?dsForumId=4&dsMessageId=436703。似乎我的Tortious SVN可能因为它首先被安装而引起了这个问题。
我已经卸载了Tortoise和CollabNet,然后重新安装了已安装的CollabNet,然后重新启动了Tortoise。安装TortoiseSVN时,我没有选择"命令行客户端工具"。然后我不得不把GNU Diff放回到系统路径的开头。之后我试着做rbt post
并得到了同样的错误。然后我修改了Tortoise SVN安装以包含command line client tools
,然后再次尝试并仍然得到相同的错误消息。
答案 0 :(得分:4)
非常沮丧之后,我们发现了这个问题。我们在机器上有几个不同的差异,GNU Diff以及配合网(我们用于svn)的差异。
Collab net在其目录中有svn.exe。在做where diff
时,我能够看到路径和顺序是正确的,其中GNU差异显示在CollabNet的差异之前。但是,在运行命令时正在使用CollabNet的差异,因为collabnet diff与collabnet的svn.exe位于同一目录中。这意味着当操作系统查找diff.exe时,它会检查svn.exe首先位于的本地目录,然后是系统路径。
话虽如此,重命名" diff.exe"在collab net文件夹中将允许引用gnu diff,这解决了问题并允许rbt post
正常工作。
答案 1 :(得分:0)
此外,这可能对某些人有帮助。这可能是由于svn尝试对所有不存在的文件进行差异化。 =>转到tortoisesvn设置,选择“常规”,然后单击“ Subversion配置文件”前面的“编辑”按钮。在打开的配置文件中,确保“ diff-ignore-content-type = no”