如何在 Mercurial 队列中仅推送一个特定补丁?

2023-12-02

这就是我所做的:

hg init
hg qnew -m "p1" p1.patch
; some changes
hg qrefresh
hg qpop
hg qnew -m "p2" p2.patch
; some changes
hg qrefresh
hg qpop

现在这两个补丁是独立的功能,彼此无关。他们需要相互独立。

现在我这样做了(因为我只想要第一个功能)

hg qpush p1.patch

它说 :

applying p2.patch
applying p1.patch

它给了我both我所做的改变!

难道我做错了什么?

当我告诉它推送特定补丁时,它也会推送其他补丁。


您忘记了一件事:MQ 补丁集是queue(先进先出队列)。即,如果您可以看到多个补丁hg qseries,你必须记住 - qpush|qpop 不会以随机顺序应用|取消应用补丁,而是按顺序:从下到上推送,以相反的顺序弹出

随机访问(以及改变一系列补丁的顺序作为副作用)是--moveqpush 的选项。根据您的情况(一次仅使用一个补丁)和补丁名称

  • hg qpop -a
  • hg qpush --move p1.patch
  • hg qpop -a
  • hg qpush --move p2.patch

为了避免错误,您可以在别名部分中重新定义 qpush (对于此存储库)以始终使用--move option

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

如何在 Mercurial 队列中仅推送一个特定补丁? 的相关文章

  • Mercurial Hook - 更改提交前的提交消息

    Edit制作这个基本钩子是为了防止分支名称和提交消息 bugID 不匹配 https gist github com 2583189 https gist github com 2583189 所以基本上的想法是 如果分支名称类似于 bug
  • 使用 Mercurial 时,所有文件都必须位于“存储库文件夹”中吗?

    这是我第一次使用 Mercurial 所以这可能是一个非常新手的问题 如果我创建一个存储库 例如c HG1 我的所有文件都需要位于该目录下吗 或者我可以从不同的文件夹添加文件 例如 C 我的其他文件夹 如果您可以从不同的文件夹添加 如何添加
  • 使用不同的应用程序对 git 中的 diff 输出进行着色

    我想用cdiff https pypi python org pypi cdiff使用 git 时对差异输出进行着色 我可以通过 cdiff 传递 git 命令的输出 但我想知道是否可以不必这样做 具体来说 当我使用git log p 当我
  • 我应该如何处理 WiX 安装程序中的产品升级?

    我有一个相当大的 WiX 安装程序 250 Mb 以上 我正在尝试制定合适的升级策略 安装程序中的大多数文件都不会更改 并且当只有一两个文件发生更改时 我们不希望分发整个包 我研究了主要和次要升级 我的理解是 如果产品 ID 发生变化 只要
  • ssh-add,自动添加私钥

    我有一个公私 ssh 密钥对 由ssh keygen without密码 我将它与我的 bitbucket 帐户一起使用 特别是与 Mercurial 存储库一起使用 通常我在我的家庭工作电脑中手动添加私钥 使用ssh add ssh id
  • 有条件的 Mercurial 忽略文件

    我在 Mercurial 中有一个文件 我希望开发机器提取该文件 但我希望部署服务器不提取该文件 它具有开发机器没有的特殊模块 这是可能的 还是我应该有一个自定义的推送到服务器解决方案 而不是仅仅进行 hg pull 执行此操作的典型方法是
  • 如何远程在BitBucket上创建存储库?

    我想在 Bitbucket 上使用 hg 命令从本地计算机创建存储库 而不是在 Bitbucket 上手动创建存储库 是否可以 我通过curl 命令使用REST API 执行了以下操作 gt curl k X POST user user
  • Mercurial .hgrc 文件

    默认情况下 在 Windows XP 上 Mercurial 将 hgrc 文件存储在 好吧 就我而言 c Documents and Settings srooks 我如何更改该位置 并让它在其中查找 hgrc 文件 例如 c Confi
  • 将带有子存储库的 Mercurial 存储库迁移到 git 并保留历史记录的最佳方法?

    我正在尝试将 Mercurial 存储库迁移到 git 但问题是 Mercurial 存储库有子存储库 有些带有分支 以及大量合并和分支本身 我希望最终的 git 存储库能够保留所有这些历史记录 并且在检查存储库或其他分支的早期部分时保持正
  • 来自外部 .diff 文件的交互式补丁

    Linux 是否有命令或程序允许交互式地修补源代码 在屏幕上打印每个块并在将其应用到文件之前等待确认 就像是git add p 但是从另一个 diff 文件中进行更改 您始终可以在 shell ruby python 中编写脚本 逐行读取该
  • Mercurial revset 用于在提交后查找下一个标签

    我如何找到next tag在特定变更集修订之后 例如 如果变更集中引入了错误abcdef123456 如何找到包含此错误的第一个版本 标签 我想我可以使用HG 转速 https hg mozilla org mozilla central
  • hg Convert --authors errorUsers <-- 文件的格式是什么?

    Related here https stackoverflow com questions 732819 can i change the username on a mercurial changeset 757604 757604 指
  • 使用 hg 存储库作为网站

    这与我的安全问题有些相关here https stackoverflow com questions 2361626 security deny access to hg via mod rewrite 对实时网站使用 hg Mercuri
  • 将密码存储在 TortoiseHg 中

    有没有办法配置乌龟汞 http tortoisehg bitbucket io 存储我的密码 我有一个项目托管在谷歌代码 http code google com 我使用 TortoiseHg 访问 每当我想要将更改推送到 Google 代
  • 为 Mercurial 执行 hgweb.cgi 时,指定的 CGI 应用程序行为不当...

    我有 IIS 6 我将 Mercurial 安装在 c program files mercurial 中 我在 c program files python 中安装了 Python 2 6 I added extension handli
  • 为 Eclipse 安装 Mercurial 插件时出错

    我刚刚为 Eclipse 安装了一个 Mercurial 插件 安装过程很顺利 但是安装后 当我重新启动 eclipse 时 显示错误 错误说 发生了多个 Mercurial 错误 请检查错误日志视图以获取详细信息 命令行 hg y deb
  • 如何在 Mac OS X 10.8 上安装 hg Convert 所需的 python subversion 绑定?

    我正在寻找一种解决方案 最好是干净且简单的 以启用hg convert使用 SVN 存储库在 OS X 10 8 上工作 目前 如果您尝试转换 SVN 存储库 您将得到一个could not load Subversion python b
  • 如何在 Windows 上应用差异补丁?

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

    我正在尝试通过 pip 将我的应用程序安装到 virtualenv 进行测试 安装时效果很好default or tip像这样 pip install e hg https email protected cdn cgi l email p
  • 本地提交推送到中央服务器

    在工作中 我们使用 perforce 并被鼓励定期对其进行承诺 我对此很满意 然而 我想运行像 Mercurial 这样的东西 这样我就可以在本地提交正在进行的工作并且不一定编译 运行的东西 然后从中定期提交到中央 perforce 服务器

随机推荐