在开发一个新功能时,我到达了它大致可以工作的地步,但仍然不是我想要创建变更集的地步。然而,我会创建一个“恢复点”或“snapsnot”,这样我就可以回到我的代码库的这个大致工作版本。在 TFS 中,我会创建一个搁置集。
在 mercurial 中,搁置集的行为有所不同:一旦我将文件移动到搁架中,文件就会恢复到最后一个变更集的状态。因此,出于我创建快照并继续工作的目的,这种行为使搁置不是解决方案。
How can I snapshot my work and continue with the files as they are?
我知道这里有很多关于 mercurial 搁置的问题,但我无法在其中找到这个问题的答案。
评论@Mathiasdm 和@Gill Bates 的有用答案
现在我使用 commit --amend,它在 TortoisHG 中也可用:提交按钮可以转换为修改按钮。
Ammend 将更改添加到先前的提交中,而不是创建新的变更集。所以
- 首先我使用粗略版本创建一个提交,然后
- 通过修改它来改进它。
"hg shelve && hg unshelve --keep" 和 mq 扩展是不错的选择。