【问题标题】:Recreate svn patch for newer revision为较新的版本重新创建 svn 补丁
【发布时间】:2013-09-11 20:01:52
【问题描述】:

我的情况如下:

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

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

提前致谢!

【问题讨论】:

    标签: svn versioning patch


    【解决方案1】:

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

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

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-11-04
      • 1970-01-01
      • 2013-02-08
      • 1970-01-01
      • 1970-01-01
      • 2021-10-27
      • 1970-01-01
      • 2021-11-26
      相关资源
      最近更新 更多