丢弃 TortoiseHg 中的多个提交
Discarding more than one commit in TortoiseHg
我正在使用 TortoiseHg。
我做了一个错误的提交,然后另一个错误的提交。
两个提交都处于草稿状态(尚未推送)。
我想完全忽略此提交并返回,就好像它们从未提交过一样。
回滚似乎只删除了最后一次提交。
我怎样才能完成这个简单的任务?
在设置中启用 mq
或 strip
扩展,然后在变更集上下文菜单中使用 Modify History -> Strip
你可以为两个错误的提交回滚两次
Follow-up 与@zerkms
讨论
MQ 在 2.8 之前包含 Mercurial (TortoiseHG) 的 strip。现在是 independent extension,必须在没有 MQ(参见 2)的扩展(参见 1)中启用
之后,Strip 将出现在 context-menu 的 "Modify history" 菜单中,用于变更集
在最近的 mercurial 中(我认为是从 v2.8 开始),您可以使变更集过时,这会在大多数视图中隐藏它们,但如果您发现需要它们,它们仍然存在。这是做你想做的推荐方法。
假设最近的变更集是 132,最新的好变更是 130。只需像这样使变更集 131 和 132 过时:
hg prune -r 131::132
再简单不过了(只需确保当前父级不是不需要的变更集之一)。
如果您想查看过时变更集的内容,只需将 --hidden 添加到普通命令行即可,例如:
hg log -r 120::132 --hidden
注意。 Tortoise 具有查看过时变更集的功能,但我认为它还没有能力使它们过时。
我正在使用 TortoiseHg。
我做了一个错误的提交,然后另一个错误的提交。
两个提交都处于草稿状态(尚未推送)。
我想完全忽略此提交并返回,就好像它们从未提交过一样。
回滚似乎只删除了最后一次提交。
我怎样才能完成这个简单的任务?
在设置中启用 mq
或 strip
扩展,然后在变更集上下文菜单中使用 Modify History -> Strip
你可以为两个错误的提交回滚两次
Follow-up 与@zerkms
讨论MQ 在 2.8 之前包含 Mercurial (TortoiseHG) 的 strip。现在是 independent extension,必须在没有 MQ(参见 2)的扩展(参见 1)中启用
之后,Strip 将出现在 context-menu 的 "Modify history" 菜单中,用于变更集
在最近的 mercurial 中(我认为是从 v2.8 开始),您可以使变更集过时,这会在大多数视图中隐藏它们,但如果您发现需要它们,它们仍然存在。这是做你想做的推荐方法。
假设最近的变更集是 132,最新的好变更是 130。只需像这样使变更集 131 和 132 过时:
hg prune -r 131::132
再简单不过了(只需确保当前父级不是不需要的变更集之一)。
如果您想查看过时变更集的内容,只需将 --hidden 添加到普通命令行即可,例如:
hg log -r 120::132 --hidden
注意。 Tortoise 具有查看过时变更集的功能,但我认为它还没有能力使它们过时。