我正在尝试应用补丁,但我收到一条空白错误消息(其中没有文本或任何内容)。我有最新版本的 TortoiseSVN。
6 回答
我有同样的问题,如果你从修订版创建了补丁,使用“将更改显示为统一差异”,检查你的补丁文件中的路径,这个是正确的:
文件夹/文件名.cs
但是这个(使用绝对路径)会导致问题:
c:/文件夹/文件名.cs
只需将绝对路径转换为相对路径。
Having a look here, seems to be 3 possible root causes to this empty error svn patch issue:
the patch file is empty (or is invalid so the patch data appears to be empty)
the patch is not applied to the correct directory (auto-dir-search works on trunk now)
the patch file uses absolute paths instead of relative ones (trunk already strips such paths automatically)
first is probably not yours, most probably you ought to use relative path instead of absolute one
我一直收到这个消息。这通常是因为我在 Windows 资源管理器中单击鼠标右键以访问 tortoise 日志。当您在此上下文中使用“将差异显示为统一差异”时,生成的补丁将包含相对于您的计算机的绝对位置,例如“c:\source\”。如果您尝试将此补丁应用到另一个目录,则会失败。
解决方案是使用 Tortoise 的存储库浏览器,然后使用此上下文中的“显示日志”菜单。生成的补丁将具有相对位置,您将能够在匹配相对路径的任何位置应用这些补丁。
我也遇到了这个问题,并通过更改补丁文件中的路径来修复它。就我而言,我只需要修补一个文件。出现问题是因为在我的情况下,我从审查委员会创建了补丁文件,该文件创建了具有完整链接路径的文件。INDEX /home/pushpendra/...something/file.c (revision some_rev)
所以我将这一行替换为:
INDEX file.c (revision some_rev) 然后右击这个文件然后应用补丁。
如果创建补丁的版本和应用补丁的版本不同,则无法应用补丁。
我遇到过同样的问题。
问题是:
- 我检查了:一些/疯狂/路径
- 该补丁适用于:this/is/some/crazy/path
不知何故,乌龟无法应用补丁,所以我在更高的级别上检查了它,它起作用了。