0

这是我的情况...

我正在处理一个项目,但无权提交到 CVS 存储库。相反,我必须创建并提交补丁。

但是,有时我需要与其他开发人员共享代码,他们会向我发送我需要应用的他们自己的补丁......但是当需要生成我自己的补丁时,它也包含他们的代码,而我没有想要那个!

CVS 有没有办法从存储库以外的引用生成补丁?这样我可以两次检查项目,对它们应用补丁并比较它们以检索我自己的修改......

或者有没有人有更好的主意呢?

谢谢!

4

2 回答 2

0

您可以通过签出 3 个版本来模拟分支,并根据需要在它们之间应用补丁,其中一个只包含您的更改,一个只包含其他开发者补丁,最后一个可以同时包含两个补丁进行测试。仅从第一次结帐时生成补丁,它们将是干净的。

更好的选择是获得对特定分支进行提交的许可并对其进行提交,并根据需要应用来自其他开发人员的补丁。

更好的办法是在本地实现您自己的版本控制,您可以根据自己的喜好进行分支和合并,并且只在准备好时才创建补丁以供共享。

于 2009-08-27T20:02:53.680 回答
0

您可以使用一些 DVCS 技术跟踪您自己的更改。例如,git 支持跟踪 CVS 存储库:您保持与 CVS 存储库同步的 git 存储库,并为您自己的更改克隆它。当您收到外部补丁时,您可以在本地提交它们(可能根据需要创建更多克隆);这将允许您相当自由地合并和撤消内容。

技术上要简单得多:保留一个包含您应用的所有外部补丁的文件。在创建您自己的补丁之前,还原这些更改(使用patch -R),然后创建您的补丁,然后重新应用其他更改以继续工作。

于 2009-08-27T20:05:03.410 回答