这就是我所做的:
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 不会以随机顺序应用|取消应用补丁,而是按顺序:从下到上推送,以相反的顺序弹出
随机访问(以及改变一系列补丁的顺序作为副作用)是--move
qpush 的选项。根据您的情况(一次仅使用一个补丁)和补丁名称
hg qpop -a
hg qpush --move p1.patch
hg qpop -a
hg qpush --move p2.patch
为了避免错误,您可以在别名部分中重新定义 qpush (对于此存储库)以始终使用--move
option
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)