我定期收到供应商软件的新版本,以压缩包中的源代码形式提供,但我无权访问供应商的源代码存储库。我们会在供应商的发布之间更改供应商的源代码。我们的更改没有合并到他们的版本中,但我需要将他们版本中的更改合并到我的主线中。
我的存储库布局如下所示:
我遵循的工作流程是:
我遇到的问题是,无论我如何尝试,最终要么合并导致主干没有更改,要么每个文件都被报告为树冲突。
我想我想以某种方式执行以下操作:告诉 Subversion 合并每个文件而不考虑文件的修订号。我认为 Subversion 报告每个文件的树冲突,因为这些文件并非来自修订历史记录中的同一点。但是,在许多情况下,这些文件是相同的。
预先感谢您的任何帮助。
最佳答案
在非颠覆性术语中,您希望将 Vendor X 1.0 版和 Vendor X 1.1 版之间的更改集成到您的主干中。
我将只创建一个 Vendor X 分支并使用标签来标识版本号。每当您收到新的供应商 X 版本时,检查分支,将新版本的文件复制到您的工作目录中,应用 svn add
和 svn delete
视情况而定,并提交。 Subversion 现在拥有供应商 X 在两个版本中所做的所有事情的正确差异信息。之后,您可以将最后两个供应商版本(也就是供应商 X 分支中的最后两个修订版)之间的更改与主干合并。
关于svn - 颠覆 : Merging a vendor's source code releases into mainline at regular intervals,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1683096/