0

在将一些更改从一个分支合并到另一个分支后,我修改了以下文件

M      .
M      modifiedDueToMerge
M      modifiedByMe

我只想提交来自合并的内容,换句话说,在我提交后仍应修改“modifiedByMe”。

我打算尝试使用更改列表,例如

svn changelist merged .
svn changelist merged modifiedDueToMerge

但它不带“。” 从更改列表获取状态时,我只看到“modifiedByMe”文件。

在目标分支中不包含已修改文件的情况下进行合并 + 提交的推荐方法是什么?

4

2 回答 2

1

我建议检查你的分支的第二个干净副本,在那里进行合并,然后提交。我不确定您是否小心,但您的合并可能会影响您首先修改的文件,现在包含来自合并的更改,以及来自您的更改。为了确定,我会在您的工作副本版本和每个受影响文件的基本版本之间做一个完整的Check for modifications并做一个差异。

您可能能够使用TortoiseSVN's log 并选择修订范围来确定合并将修改哪些文件,然后从结帐中提交这些特定文件。这不是 100% 准确的,所以我仍然会按照我上面的建议去做。

最后,我认为提交svn:mergeinfo除分支根以外的任何内容都是一个坏主意。我被咬的次数超过了文件和子文件夹上的 mergeinfo 所能计算的次数,所以我编写了一个工具来svn:mergeinfo在提交合并之前从它们中删除它们。请在 SO 上查看此答案以获取详细信息。

于 2013-03-07T10:42:07.907 回答
0

提交仅在 repo 的根目录上的属性更改之后,我发现下面的文件没有问题:

svn commit --depth empty -m "comment about the commit" . modifiedDueToMerge
于 2013-03-12T10:24:24.450 回答