我正在阅读关于git的教程,我的下一个任务是使用" git commit"命令并使用编辑器来生成我的提交消息。我可以让编辑器出现,但由于空消息错误,我总是得到#34; Aborting commit。"我查看了How do I make Git use the editor of my choice for commits?和Aborting commit due to empty commit message等其他地方,但没有一个选项有效。 --wait isn是合法的,-multiInst和-notabbar参数没有帮助。此外,当我将代码放入我的C:\ Users \ Kendall.gitconfig时,git仍然使用我从命令行放入核心编辑器的值。我试图在我的.gitconfig文件中使用-F标志,但它没有效果,因为它仍然使用命令行中的值。任何帮助将不胜感激。
答案 0 :(得分:6)
你没有在编辑器中保存文件,因此当git尝试读取它看不到提交消息的临时文件时。
初学者最简单的方法是使用-m标志并将消息作为引号中的字符串传递。
git commit -m "commit message here"
答案 1 :(得分:1)
我找到了问题的答案。 Notepad ++出现了一个空白的新文件但是如果我打开〜/ .git / COMMIT_EDITMSG并输入我的消息它就可以了。如果我做一个恢复,我必须做同样的事情。谢谢你的帮助!
答案 2 :(得分:0)
Git commit忽略以#开头的行。 如果像Git Bash生成的消息一样,则需要将“#”更改为字符串“”。 保存消息(和编辑器),然后提交将继续。
答案 3 :(得分:0)
我只想感谢约翰·佐特比尔先生的上述答复。 (此答案可能只是他的答案,但由于我没有足够的信誉,我无法做到这一点?...无论如何,如果您执行“ git commit”以打开“提交编辑器”,则应在其顶部找到:
#
请输入提交消息以进行更改。行开始
#
和''将会被忽略,并且一条空消息将中止提交。
因此,如果要使用基于更改自动创建的注释,则必须删除每行开头的所有#
。但是,由于我进行了许多更改,使编辑器中显示了很长的评论,因此我没有注意到顶部的内容,也没有花很多时间来弄清楚为什么它让我付出:
由于提交消息为空而中止提交。
即使我“保存”并检查它是否另存为COMMIT_EDITMSG。 希望遇到同样问题的任何人都不要浪费自己的时间!