lee*_*d00 5 diff mercurial patch mercurial-queue
hg mq插件的目的是能够对您的存储库进行完美的提交,而不是混淆您通过代码在您心不在焉的ADHD引起的漫游中所做的更改;
例如....
当我注意到bug y并开始研究bug时,我正在研究bug x.此时,您应该在修补程序队列中创建一个新修补程序,以便在将更改hg qfinish
提交到存储库时不要混淆这些更改.
现在假设您忘记制作新补丁并在此过程中hg qrefresh
.然后意识到你的错误,你希望将那个补丁的变化分成两个补丁.
我意识到它与编辑队列中的补丁文件(和新的补丁文件)有关,可以将更改分成单独的补丁和以后的提交.但是,我还不熟练编辑diff补丁文件.
我在哪里可以了解到这一点?怎么会这样呢?
我有一个 shell 别名 ,viq="vim $(hg root)/.hg/patches/"
我只在这些情况下使用它!
我会跑去viq
拉出补丁,然后手动编辑差异并根据需要将块移动到其他补丁中。
与交互式方法(例如,git add -i
)相比,我更喜欢这种方法,因为我觉得在交互式提示中工作不像在编辑器中工作那样安全(我知道我的编辑器会进行备份,具有微不足道的撤消功能等\xe2\x80\ xa6)。