0

我正在为具有 DEV 代码库和 PROD 代码库的现有环境设置 SVN。DEV 有大量待定更改,因此代码库存在显着差异。

我建立了一个基于 prod 的 TRUNK repo。然后,我将该 repo 签出到 DEV 并提交到一个新的 DEV 分支。

所以 TRUNK 看起来像:REV 1 - 初始代码导入

和 DEV 看起来像: REV 1 - 初始代码导入 REV 2 - 添加开发更改

我的问题是我希望能够合并从 DEV 到 TRUNK 的更改,以获得特定的文件集,这些文件是 REV 2 的一部分,仅用于这些文件。

换句话说,假设开发人员完成了一个项目并将 FILE1 作为 REV3 提交给 DEV。但当我创建存储库时,他也在处理 FILE1,因此它包含在 REV2 中。当他从 DEV 合并到 TRUNK 并选择修订范围时,如果他只选择 REV3,他将不会获得所有更改。但如果他选择 REV2 和 REV3,他将获得尚未准备好用于 PROD 的其他文件的所有 DEV 更改。

希望我在这里有点道理。如何仅指定某些文件进行合并?还是有另一种更好的方法?

谢谢

4

1 回答 1

0

如果您合并修订,它们会采用其中包含的所有更改,因此您没有一种直接的方式来做您正在寻找的事情。

你可以

  1. 从主干创建一个新分支,
  2. 将 Rev3 合并到该分支的工作目录中,
  3. 还原您不想包含的文件,
  4. 将更改提交到此分支
  5. 合并到主干

如果您按照上述步骤操作,那么稍后当您尝试将 Dev 分支完全合并回主干时,您很可能必须处理树冲突。

于 2012-05-22T01:13:12.037 回答