Git-如何关闭提交编辑器?


209

我是git的新手,正在学习PDF。我刚刚执行了一个命令$ git commit,它打开了一个新的编辑器。但是我正在尝试关闭该新的提交编辑器。这该怎么做?我在Windows上使用git。


不是一个完整的答案,但是避免编辑器的一种方法是使用“ -m”选项。例如,在$ git之后添加<your_changes>,然后执行$ git commit -m“我的更改;我正在避开编辑器!”
Quetzalcoatl

Answers:


242

将文件保存在编辑器中。如果是Emacs:CTRLX CTRLS保存,则CTRLX CTRLC退出,或者如果是vi::wq

esc首先按退出编辑。(在Windows / Vi中)


3
用户除了保存文件外还需要关闭编辑器,因此对于Emacs来说实际上是Ctrl-X Ctrl-C
user4815162342

1
更新了...我知道,但是像大多数emacs命令一样,它们对我根深蒂固,以至于我忘记了它们是什么...我只是去做。
tpg2114

如果您使用emacsclient,则可以使用C-x #
azzamsa

1
谢谢,在Windows bash上不清楚您是否必须1:退出并2:保存更改
Juan Monsalve19

我可以在Windows计算机上禁用此插入模式吗?
Rez.Net

199

也有麻烦。在Linux上,我使用Ctrl+ X(并Y确认),然后回到外壳上准备拉/推。

Windows上,GIT Bash Ctrl + X无能为力,发现它的工作原理与vi / vim相当。按i进入嵌入式插入模式。在最上方键入说明,按esc退出插入模式,然后键入:x!(现在光标在底部)并单击enter以保存并退出。

如果:q!改为键入,将退出编辑器而不保存(并且提交将被中止)


18
这就是答案对我来说窗
矿脉

1
esc:x!-这不仅仅是发现,就像有人在玩具有功能的捉迷藏一样。
特里斯坦(Tristan)

45

写入提交消息后,只需按Esc按钮,然后输入:wq:wq!然后按Enter关闭UNIX文件。


6
此解决方案是在Git Gui bash上工作的解决方案
ocrampico

!这使我想起了大学时代,那是我们写了一些:wq命令之后做了些Unix vi编辑的东西
Irf,

:x:wqVim中的快捷方式。
rnevius

19

更好的是,将编辑器配置为您喜欢的东西(以gedit为例):

git config --global core.editor "gedit"

您可以像这样读取当前配置:

git config core.editor

您也可以从命令行添加提交消息。

git commit -m "blablabla"

并且编辑器将不会首先打开。


7

git commit命令,进入到编辑器,所以先打i然后开始打字。提交后,您的消息打击Ctrl + c,然后:wq


4

纳米的替代品(可能会使您的生活更轻松):

在Windows上,使用记事本。在命令提示符下键入:

git config core.editor notepad

在Ubuntu / Linux上,使用文本编辑器(gedit)。在终端窗口中输入:

git config core.editor gedit


1

作为“保存并退出”的替代方法,您可以使用git-commit的功能git-commit-commit,默认情况下绑定到C-c C-c。它将保存文件并关闭它。之后,您仍然必须C-x C-c如上所述使用来关闭emacs 。我目前正在尝试找出如何使emacs自动退出。


1

我遇到了这个问题,收到了“>”这样的提示,但无法提交。我将注释中的“替换为”,并且可以使用。

希望对您有所帮助!


啊哈!我也被这个“>”提示卡住了。通过阅读您的评论,我发现由于我在评论中使用了撇号,因此终端机正在等待我关闭报价!终于我有空了!
凯文·沙恩霍斯特

0

不确定将您带到>提示的组合键,但我所知道的不是bash提示。我通常是偶然得到的。Ctrl + C(或D)使我回到$提示符。



0

在Mac中1.按shift + Z shift + Z(两次Z键)。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.