0

我的情况如下:

  1. 我在版本 A 下载了一个项目(该项目使用的是 SVN)
  2. 我开发了一个新功能,将其作为补丁提出来
  3. 我现在确实有补丁,当您将其应用于修订版 A 时,它会为您提供该功能
  4. 自第 1 步以来,该项目进一步发展,现在正在修订 B。
  5. 我现在需要知道如何将我的功能作为一个补丁,它可以应用于修订版 B 并在那里集成我的功能。

有没有办法做到这一点?不幸的是,我比 SVN 更喜欢 Git ...... :(

提前致谢!

4

1 回答 1

0

补丁的美妙之处在于,即使生成它的代码略有变化,它们也经常可以应用。

您可以在类 Unix 系统上使用带有标准“补丁”实用程序的 SVN 补丁,该实用程序也已移植到 Windows ( http://gnuwin32.sourceforge.net/packages/patch.htm )。该实用程序使您可以相当程度地控制补丁的应用方式以及在尝试应用补丁时要考虑多少“模糊”。应用补丁后,检查 svn diff 以确保包含所有更改,并且无需对其进行任何修改即可使其与最新代码一起使用,然后您可以重新生成补丁以使其适用干净地。

如果代码更改太多,或者与您在补丁中修改的行相同,那么一个或多个“大块头”可能会失败。在这种情况下,补丁实用程序会告诉您失败的原因,您可以在重新创建补丁之前手动应用这些更改。

于 2013-09-11T23:36:22.287 回答