【问题标题】:Using IntelliJ to amend git commit message使用 IntelliJ 修改 git commit 消息
【发布时间】:2012-12-14 02:19:55
【问题描述】:

可以使用IntelliJ 修改 git 提交消息,还是应该求助于命令行?

请问这个怎么做?

【问题讨论】:

    标签: git intellij-idea git-commit


    【解决方案1】:

    视图 => 工具窗口 => 版本控制。 (Windows (Alt + 9) / OS X (Cmd + 9))

    IntelliJ 2017.1 及更高版本 => 转到 Log 并右键单击 + reword 或按 F2。

    当你在同一个分支时,(你签出的分支是一样的)

    【讨论】:

    • 这似乎是使用 WebStorm 2017.3 修改 cmets(不进行更改以强制提交)的唯一方法(可能是命令行)。此版本控制窗口通过 Alt+9 或 View->Tool Windows->Version Control 出现。
    • 在 Idea 2017.3 中,所描述的命令被命名为“Reword...”而不是“Rename”(如屏幕截图所示 :-))。 F2 也可以。
    • 有人知道为什么“编辑提交消息...”在我的 IntelliJ (2019.3.1) 中显示为灰色吗?
    • @Cold_Class 这是你的提交信息吗?我有一个灰色的,这是一个合并。就像Merge branch 'develop' of REPO_URL into BRANCH_NAME 你是这个意思吗?
    • @StefanRein - 我今天遇到了这个问题,并意识到我处于樱桃采摘模式 - 这必须中止
    【解决方案2】:

    如果是 2018.3 和 2017.1 相同

    Alt + 9(版本控制窗口)

    然后右键单击->上下文菜单单击“改写... F2

    快捷键F2你可以编辑消息。

    【讨论】:

      【解决方案3】:

      在 JetBrains 中 Go to View -> Version Control -> 这将在屏幕底部打开版本控制日志选项卡 Go to Log 并且你可以看到你上次所做的提交 右键单击它,然后选择undo commit

      宾果!您已恢复所有提交并且该消息已被删除。如果您只想更改提交消息,您也可以选择进行软重置

      【讨论】:

        【解决方案4】:

        在“日志”选项卡中,选择提交并按 F2(改写)。就是这样。

        【讨论】:

          【解决方案5】:

          公平地说,最快的方法是通过命令行。我知道 OP 询问是否通过 IntelliJ 执行此操作(我是如何找到这个问题的,我试图在 PHPStorm 中执行此操作),但说真的,通过命令行更容易。

          在终端/命令提示符类型的正确文件夹中时

          git commit --amend
          

          然后您将看到最后一条提交消息,只需编辑文本并保存文件,工作就完成了!

          如果您想更改编辑器(默认为 vi),请使用此命令,将“vim”更改为您选择的编辑器。

          git config --global core.editor "vim"
          

          即Windows 用户可能想要...

          git config --global core.editor "notepad"
          

          来源:https://help.github.com/articles/changing-a-commit-message/

          【讨论】:

          • 你的答案和其他的太相似了,带来的方法更不方便。 git commit --amend -m my_new_message 用于直接从命令行更改提交消息。
          • 我觉得这个不错。我们可以根据虚假消息修改消息。而且“VI”编辑器也不错。
          • @ChristopherJ。 - 抱歉,我发布此内容时没有看到您的回复。我会把它留在这里,因为如果你不喜欢默认值,我有编辑器更改添加。
          【解决方案6】:

          终于找到了解决方法。这个问题困扰了我好几天。

          1. 转到版本控制 - 日志选项卡
          2. 选择版本,在您的更改下方。右键单击并说“将当前分支重置到此处”
          3. 选择“Soft”并点击Reset,这很重要,您只需点击soft,这样您的更改就不会丢失。
          4. 签入版本控制,本地更改,您的更改将在同一个更改列表中可用
          5. 右键单击更改列表并选择提交。
          6. 它会显示你之前的提交信息,现在你可以修改 cmets 并说提交和推送

            Note: This solution uses android studio as intellij platform. 
            

          【讨论】:

          • 对我来说,在 IntelliJ 17.3 中,我可以使用 Version Control: Log 中的“Reword... (F2)”菜单项直接编辑提交消息。
          【解决方案7】:

          您也可以使用终端和 shell(如 powershell、cmd 或 bash(取决于您的系统))进入您的 git 文件夹,然后键入:

          git commit --amend -m "your new commit message"
          

          【讨论】:

          • 而且由于 IntelliJ 提供了集成终端,您甚至不必离开 IDE。这可能是最快的方式。
          • 如何保存修改提交?我似乎无法弄清楚什么是退出命令。 CTRL-x CTRL-q?
          • 在 intellij 中提交时有修正选项
          【解决方案8】:

          可以在变基期间编辑提交消息。从VCS 菜单调用Rebase 命令,确认分支设置,然后单击Rebase 按钮​​。您将看到未推送的提交列表。从要编辑的消息左侧的下拉列表中选择reword 操作。

          查看Rewriting History 上的 git 文档以获取有关其他变基操作的详细信息。

          【讨论】:

          • 这是更好的选择之一。如果您已经将更改推送到原点,IDE 会警告您。这是一件好事,就好像有人已经拉取了你推送的提交,修改提交,即使只是更改提交消息,也意味着所有拉取先前提交的人也需要重新设置基准。这通常是一件“坏事”。
          【解决方案9】:

          支持修改:调用“提交更改”并在“提交”对话框中选中“修改提交”复选框。然后按“Commit”按钮,commit会被修改为上一个。

          但是,支持是有限的:

          • 您看不到正在修改的提交的详细信息,
          • 如果您没有任何未提交的更改(例如,您只想更改上一次提交的消息而不添加更多更改),您将无法调用“提交”。

          【讨论】:

          • 解决第二个问题的常用解决方法是在文件中添加一些不重要的字符(空格等),以便您可以提交
          • JetBrains 支持向我推荐了增强请求 IDEA-81428IDEA-57979。这个问题和答案也适用于 PyCharm。
          • 自 2017.2 以来,此答案不再正确。您现在可以轻松完成:Version Control 面板 > Log 选项卡 > 选择最后一次提交 > 按 F2。 jetbrains.com/idea/whatsnew/#v2017-2-version-control
          猜你喜欢
          • 2015-10-28
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2019-02-23
          • 2021-05-15
          • 1970-01-01
          相关资源
          最近更新 更多