也许我错过了一些重要的东西,但我想切换到另一个分支,而不必先提交我目前拥有的东西。我意识到我可以使用hg update -C
,并简单地删除当前的更改,但这不是我想要做的。HG更新需要分支合并
我的问题是,我有几个分支,我正在同时工作,不想填补我的历史与大量的小提交。有没有一个中间的基础,我可以存储我当前的分支,而无需承诺在某些情况下做出的每个小改动。
也许我错过了一些重要的东西,但我想切换到另一个分支,而不必先提交我目前拥有的东西。我意识到我可以使用hg update -C
,并简单地删除当前的更改,但这不是我想要做的。HG更新需要分支合并
我的问题是,我有几个分支,我正在同时工作,不想填补我的历史与大量的小提交。有没有一个中间的基础,我可以存储我当前的分支,而无需承诺在某些情况下做出的每个小改动。
的shelve extension可以做你想做什么:
从页面:
暂时离开藏匿的变化。您可以选择要搁置的更改的确切人群 。
汞柱搁置
暂时离开藏匿的变化。所有的hunks将自动被选中 。
汞柱搁置--all
获取更改回复到工作目录的。
汞柱取消搁置
如果使用--name选项,你可以搁置在不同的货架上不同的变化。
但是,很多小提交有什么问题?如果这些更改独立,那么他们可能应该承诺提交,如果您想保持清醒的话,您确实不希望在签入时插入多个问题,特别是如果您以后要将功能合并到其他仓库中时更是如此。
在许多情况下,我的提交包含拼写错误和样式更改。 – Blackninja543 2012-08-07 20:29:59
让每个分支签出它自己的克隆。你可以在它们之间切换而不需要做任何事情。
顺便说一下,崩溃扩展现在可以通过'hg rebase --collapse -r --dest 中的第一个rev的父亲进行大量替换。 –
2012-09-21 21:11:44