代码之家  ›  专栏  ›  技术社区  ›  Jon Davis Glenn Block

Mercurial:如何在签入变更集摘要之后对其进行更改?[副本]

  •  1
  • Jon Davis Glenn Block  · 技术社区  · 16 年前

    可能重复:
    Is it possible to edit a summary after a commit using TortoiseHg?

    在Mercurial中,如果我忘记在签入摘要中包含缺陷,除了调整平面文件和签入后续的变更集只是为了对以前的签入进行注释之外,如何更改以前签入的变更集的摘要?

    使用乌龟。

    2 回复  |  直到 9 年前
        1
  •  6
  •   dls    15 年前

    histedit . Histedit允许您删除、修改, 合并或以其他方式编辑以前的提交。

    Histedit不与Mercurial一起提供,也不能与TortoiseHg一起使用,但用法非常简单:

    > hg histedit <rev>
    

    要更改注释的修订在哪里。Histedit将生成一个变更集列表,并显示它们的SHA1。除了每个变更集之外,还有一个词指示一旦关闭文本窗口,histedit将对每个变更集执行什么操作。在要修改的变更集旁边-将“pick”替换为“edit”。关闭文本窗口,然后发出以下命令:

    > hg histedit --continue
    

    另一个包含日志消息的文本窗口将出现。把信息改成你想要的。如果文件尚未共享,则可以一次性对多个变更集执行此操作。这是histedit的一个非常简单的用法,更复杂的用法包括合并提交或删除 一些承诺。

    Mercurial队列似乎是一种更容易接受/支持的执行此类任务的方式。检查 here 有关mq扩展的信息。

        2
  •  4
  •   Vadim Kotov First Zero    8 年前

    您尚未共享变更集,可以使用 rollback 和/或 strip 撤消更改集,然后正确地重做。 rollback 将撤消单个变更集,而 strip 删除任意变更集和所有子体。

    在TortoiseHG中,回滚是在 Recovery dialog ,并且在 revision context menu 如果启用MQ。

    推荐文章