我正在尝试使用TortoiseSVN在两个存储库之间移动一个版本控制的目录。
仅仅复制目录是不够的,因为我还想移动所有svn:ignore
属性,所以我尝试创建一个补丁:我打开日志(历史记录)选择了相关目录的所有修订版并导出了累积差异我将补丁应用于目标文件夹。为了安全起见,我使用WinMerge将创建的目录与(导出的)原始目录进行了比较,发现缺少一个空文件。
令人惊讶的是,diff包含了这个文件:
Index: Project/SomeDir/SomeFile.cs
===================================================================
--- Project/SomeDir/SomeFile.cs (nicht existent)
+++ Project/SomeDir/SomeFile.cs (Revision 112)
@@ -0,0 +1 @@
+
\ No newline at end of file
我发现GNU patch有一个用于在应用补丁后删除空文件的开关:
-E --remove-空文件
Remove output files that are empty after the patches have been applied. See Creating and Removing.
...我期望在我的svn客户端(svn patch
)中出现相应的开关。有这样的选择吗?调用哪个补丁工具? svn的命令行帮助不回答这两个问题。