Mercurial 可以做反向补丁吗?

2023-12-24

场景:我“继承”了一个程序,保存在 Mercurial 下,该程序仅适用于我的系统,并对签入的某些文件进行了特定调整。我do not想要检查这些调整。

我最近的解决方案是创建一个包含这些调整的 Mercurial 补丁文件(hg diff > patchfile);当我需要检查我的更改时,我只需反向应用补丁、提交并重新应用补丁。 (如果我完全控制源代码,我只需将所有这些小调整移至不受版本控制的单个配置文件,将“示例”配置文件置于版本控制之下)

不幸的是,虽然 GNUpatch命令支持--reverse标志,它不支持 hg 的多文件 diff 格式作为单个补丁文件(或者也许它支持,但我只是不知道它的开关?)。 OTOH,hg 有自己的patch可以应用差异的命令,但不支持任何类型reverse flag.

所以我的问题是双重的:

  1. How should这可以在 Mercurial 中完成吗?当然,坚持“调整补丁”并不是处理这种情况的唯一方法。也许 Mercurial 有一个插件或内置的东西来处理这种临时的、不可提交的更改。
  2. 除了事情如何should完成后,有什么方法可以将这样的 Mercurial diff 补丁反向应用到像这样的 Mercurial 存储库中吗?在其他情况下,此类功能也很有用。

水星的patch命令(真的import) 不支持反向,但是hg diff做。使用--reverse在此基础上,您将获得 Mercurial 可以应用的反向补丁。

但是,您所描述的是一个非常常见的供应商分支样式工作流程,mercurial 可以更好地支持使用 diff 和 patch 之外的功能。

具体来说,Mercurial 队列 http://hgbook.red-bean.com/read/managing-change-with-mercurial-queues.html正是你想要的。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Mercurial 可以做反向补丁吗? 的相关文章

  • 在 Windows 7 上的 Sourcetree 中比较 Word docx 文件

    我一直在尝试获取在 Windows 7 上的 Sourcetree 中工作的 Word docx 文件的文本差异 我已按照此处的说明进行操作将 Microsoft Word 与 git 结合使用 http blog martinfenner
  • 如何将工作树与提交进行比较?

    我在用着 git diff mycommit 用于比较我的工作树mycommit 但它似乎忽略当前索引中不存在的文件 您可以按如下方式重现它 git init echo A gt A txt git add git commit m A g
  • Mercurial 和 TortoiseHG - 推送更改后更新远程存储库

    将更改推送到远程存储库时 是否无法自动运行更新以使更改 文件可用 Use changegroup挂在远程端 如Mercurial 常见问题解答中进行了描述 http mercurial selenic com wiki FAQ FAQ 2F
  • 如何提取 Mercurial 中变更集的所有已更改文件?

    直到最近 我们一直在网络工作室的所有项目中使用 SVN 并且 Subversive 和 TortoiseSVN 等多个客户端中存在一个非常方便的功能 可以提取在某个版本中更改的所有文件 Mercurial 有没有办法做到这一点 我不在乎它是
  • 协调多个依赖的 Mercurial 存储库版本的推荐方法?

    好吧 经过几个小时的阅读和反复试验 它终于击中了我 Mercurial 并不真正想做 SubRepos 至少不想与 TortoiseHg 和 Bitbucket 一起使用 如果我错了 并且您不希望对类似于 当然它有效 您没有阅读官方文档吗
  • 如何在 Visual Studio 2013 中使用 Git 的外部 diff 工具?

    我找到了这个帖子 http architects dzone com articles how configure diff and merge这解释了如何让 Visual Studio 2013 在比较 Git 中的文件时使用内置 dif
  • 如何在 Windows 上应用差异补丁?

    有很多程序可以创建差异补丁 但我在尝试应用一个程序时遇到了很大的困难 我正在尝试分发补丁 但用户向我询问了如何应用该补丁 于是我尝试自己弄清楚 结果发现我毫无头绪 而且我能找到的大多数工具都是命令行的 我可以处理命令行 但是如果没有一个漂亮
  • 如何存储和计算版本控制历史记录?

    考虑这个简单的 python 代码 它演示了一个非常简单的字典版本控制设计 def build current history current for action key value in history assert action in
  • GIT 或 SVN 或...适用于前端开发人员

    我最近开始将一些项目导入到工作中的 Subversion 存储库中 在接下来的几周内 我希望团队中的每个人都能负责自己的源代码控制管理 我选择 SVN 而不是 GIT 的原因是我想要everyone团队中的人员 包括设计师 前端人员 集成商
  • 如何从 Mercurial 中的“主”存储库获取 Google 代码托管项目的更改?

    我从 code google com 上托管的项目创建了一个 服务器 克隆 我从我的机器中的该存储库创建一个克隆并推送一些更改 一切顺利 现在主存储库有一些更改 我想拉取它们 如何使用这些更改更新我的 服务器 克隆 hg pull u go
  • 从关系数据库中“区分”对象

    我们的 win32 应用程序根据 MySQL 关系数据库中多个表中的数据组装对象 对于这样的对象 多个修订版本存储在数据库中 当存储某些内容的多个修订版本时 迟早您会问自己这样的问题 您是否可以想象两个修订版本之间的差异 所以我的问题是 比
  • 有什么方法可以将自定义差异工具与cleartool/clearcase一起使用?

    我想在使用 Clearcase 快照视图时使用我自己的差异 据我所知 运行时无法指定 diff 工具 cleartool diff 所以我想我可以运行类似的东西 mydiff
  • 来自行号的方法名称

    给定特定类源代码 Java C 的行号 是否有一种简单的方法来获取它所属的方法的名称 如果它落入其中 大概使用抽象语法树 这对于将 checkstyle 的输出限制为仅触及的方法很有用 我假设您必须使用抽象语法树来执行 Line gt Me
  • 使用 Mercurial 自动构建的版本编号

    我们最近从 SVN 切换到 Mercurial 我们还设置了一个 CruiseControl NET 来运行自动构建 它从源代码控制中获取最新信息并构建应用程序 在用于自动构建的 CruiseControl NET 仪表板中 我们希望显示版
  • 如果在不同的分支上,为什么我不能重新建立源变更集的祖先?

    我想知道为什么以下模式不可能 创建了一个本地功能分支 minor feature 不打算与世界共享 后 我想将其上的工作重新建立到一个众所周知的分支 稳定 的尖端 然而我发现 在稳定版自从分支以来没有取得任何进展的情况下 rebase 找不
  • 两个目录中相同文件的 Git Diff 总是会导致“重命名”

    git diff no index no prefix summary U4000 目录1 目录2 这按预期工作 因为它返回两个目录之间所有文件的差异 添加的文件按预期输出 删除的文件也会产生预期的 diff 输出 但是 由于 diff 将
  • Mercurial:使一个分支与另一个分支相同

    我正在与另一位相对较新的开发人员合作 为了让我能够对她的工作进行代码审查 我让她创建了一个分支 我可以审查该分支 如果我对更改感到满意的话 还可以定期合并该分支 该分支已被清除 所以我只想 重置 它 使其与主线相同 这样她就可以从干净的代码
  • 使用 difftool 比较同一文件的暂存版本和未暂存版本之间的差异[重复]

    这个问题在这里已经有答案了 有没有办法查看之间的差异staged and unstaged同一文件的版本 例如 Changes to be committed modified conf application conf Changes n
  • 如何在不访问 hg 的情况下提取 BitBucket 存储库

    我想知道是否可以在不访问 hg 的情况下将私人 Mercurial 存储库拉到服务器上 我有 SSH 访问权限 但无法安装 HG 我正在考虑某种使用 http 访问的 Python 脚本或其他东西 但我不确定 我还认为这可能只有通过公共回购
  • Kubernetes 滚动更新不停机?

    根据https kubernetes io docs tutorials stateful application basic stateful set scaling a statefulset https kubernetes io d

随机推荐