首页 > 解决方案 > 在不同分支文件夹的svn合并期间获取意外的更改列表

问题描述

我有 2 个分支 accos_2.1.3b_ludz 和 accos_2.1.3_ludz。我对 /WebcContent/WEB-INF/lib 文件夹 accos_2.1.3b_ludz 进行了以下更改: 在此处输入图像描述 在此处输入图像描述

他们基本上只是更新到较新版本的 jar 文件。我正在尝试将更改合并到 accos_2.1.3 分支

使用svn merge命令 with--dry-run给了我以下信息:

 C:\Users\linhou\Teamforge\accos_2.1.3b_ludz\WebContent\WEB-INF\lib>svn merge ^
 More?  ^^/Accos/branches/ludwig/accos_2.1.3b_ludz/WebContent/WEB-INF/lib ^
 More? ^^/Accos/branches/ludwig/accos_2.1.3_ludz/WebContent/WEB-INF/lib --dry-run
--- Merging differences between repository URLs into '.':
A    hibernate-core-4.2.18.Final.jar
A    antlr-2.7.6rc1.jar
D    antlr-2.7.7.jar
D    hibernate-core-4.2.21.Final.jar

我不明白的是为什么 hibernate-core.4.2.18.Final.jar 被标记A而不是Dhibernate-core-4.2.21.Final.jar 被标记D而不是A. 鉴于 accos_2.1.3b 是源而 accos_2.1.3 是目标,所以我希望As 和Ds 可以互换。

标签: svn

解决方案


如此处所述,您的命令行具有以下格式:

svn merge SOURCE1 SOURCE2 [TARGET_WCPATH]

这会产生适用于 SOURCE1 SOURCE2的差异。
因此,在您的情况下,这会产生适用于branchaccos_2.1.3b_ludz branch的差异accos_2.1.3_ludz。你观察到的完全符合这个解释。

对于您的预期输出,您只需反转参数,如下所示:

svn merge .../accos_2.1.3_ludz/... .../accos_2.1.3b_ludz/... --dry-run

推荐阅读