如何退出我的 git commit 消息?我不在 VIM 中,我使用了“commit -m”命令

Posted

技术标签:

【中文标题】如何退出我的 git commit 消息?我不在 VIM 中,我使用了“commit -m”命令【英文标题】:How do I exit my git commit message? I'm NOT in the VIM, I used the " commit -m " command 【发布时间】:2014-12-01 10:58:53 【问题描述】:

我试图提交一条消息,但我不小心打错了:

'git commit -m 'Deleted old Basic Syntax chapter README'

现在我被困在终端中,它显示的只是:

> 
>
>
>
>asdfasdfad
>
>asd
>

如何退出此操作,但仍保留我的提交消息?我可以重新提交,但我不想退出终端,因为我正坐在一些我不想丢失的提交上。 (如果我完全失去它们?)

【问题讨论】:

“仍然保留我的提交信息”是什么意思? 我原本打算保留“已删除的旧基本语法章节自述文件”,但这可能是不可能的。我可以处理必须重新提交的问题,但我真正关心的是不会丢失我正在处理的其他提交。 啊,我明白了。如果这个答案对你有用,你能接受吗?其他人可能会遇到同样的问题。 是的,对不起。它不会让我接受它,因为我还有 'x 分钟剩余' 不费吹灰之力,很高兴您的问题得到解决:) 【参考方案1】:

关闭终端不会丢失提交。

ctrl+c 会退出提示>

发生的事情是您打开了一个包含奇数个 ' 字符的字符串。 Bash 期望您的字符串有更多输入,并允许您在 > 提示符之后输入它。

尝试输入' 并点击return,你会得到同样的结果。如果您再次键入 '`' 关闭字符串,您将返回到正常的 bash 提示符。

【讨论】:

好的,我想我会退出终端。但是,由于这种情况不止一次发生在我身上,有没有真正的解决方案来摆脱我所处的位置? Control-C 不退出终端;它只是中止当前命令。但是,您也可以只提供结束单引号(这就是 shell 正在等待的),因为字符串 'git commit -m'(作为一个单词)将不是有效的命令名称,您只会得到一个“命令不是发现”错误。

以上是关于如何退出我的 git commit 消息?我不在 VIM 中,我使用了“commit -m”命令的主要内容,如果未能解决你的问题,请参考以下文章

如何使用“$ git commit”在消息开头引用问题(gitlab,github)? [复制]

当我在vim中填写git commit消息时,如何在文件列表中显示不同的颜色

修改git commit 最后一次提交的注释信息 以及如何退出git bash vim编辑器

如何在GIT Rebase Interactive Squash之后删除远程存储库上的历史记录提交消息

windows和ubuntu下git commit提交后如何保存和退出,回到命令行

Git远程仓库 复制到另一个远程仓库 并保留commit信息。关于Git代码提交到远程仓库怎么撤回。.gitignore。git pull 时提示为何需要merge操作如何退出