【问题标题】:Git commit in terminal opens VIM, but can't get back to terminal终端中的 Git 提交打开 VIM,但无法返回终端
【发布时间】:2012-11-10 12:58:21
【问题描述】:

目前正在尝试学习 GitHub,并在 nettuts 上做这个Git essentials tutorial。我正在学习关于提交的课程。

老师输入git commit,它以他的编辑器打开VIM(我也想知道如何让它在Sublime Text 2 中打开)无论如何它在VIM 中打开,我添加了1 行这样说是我的第一次提交并点击保存。

接下来,它会提示我将输出保存到桌面,这是我在他的截屏视频中没有看到的。现在我还在 VIM 中,不知道如何回到“正常”终端:(

我想不通,所以我只是退出终端并重新启动它,再次 git commit 并收到一些关于重复的警告消息!不确定我是否需要(E)edit 还是(A)abort

git 状态

vim

消息当我重新打开终端并再次执行 git commit 时

【问题讨论】:

  • 如果你只想知道如何保存和退出vim,那就是:wq
  • 这里有同样的问题......我一尝试提交,终端就会打开某种我无法退出的编辑器。很烦人!
  • @LeonGaban 简短的提交消息对于第一次提交是可以的,但从它们开始,您应该尝试采用简短主题的技术,然后详细说明该提交中实际发生的情况。
  • @LeonGaban 你太棒了

标签: git vim terminal command-line-interface commit


【解决方案1】:

要保存您的工作并退出,请按 Esc,然后按 wq(w 表示写入,q退出)。

或者,您可以通过按 Esc 然后按 来保存和退出:x

要设置另一个编辑器,请在终端上运行 export EDITOR=myFavoriteEdior,其中 myFavoriteEdior 可以是 vigeditsubl(用于 sublime)等。

【讨论】:

  • +1 解释命令序列和在过程中展示如何在需要时切换编辑器(但说真的,为什么有人想使用 vim 以外的编辑器:)
  • 注:一个简单的:x 保存并退出vim 它比:wq 快一点;)
  • 永久设置你可以使用的编辑器:git config --global core.editor myFavoriteEditor
  • esc 键对我没有任何作用。这是什么神秘的命令,这是 2016 年还是 1996 年?难以置信...
  • 完全不行。是的,我输入了一条提交消息。 Vim 很烂。
【解决方案2】:

不是 VIM 问题的真正答案,但您可以使用命令行也输入提交消息:

git commit -m "This is the first commit"

【讨论】:

    【解决方案3】:

    你需要返回到正常模式并保存提交消息

    <Esc>:wq
    

    <Esc>:x
    

    <Esc>ZZ
    

    Esc 键将您从插入 模式返回到正常 模式。 :wq:xZZ 序列写入更改并退出编辑器。

    【讨论】:

    • 不... esc 键什么都不做。我卡在“Merge branch master of ...”中,请输入提交消息以解释为什么需要此合并。
    • 是否你输入了提交信息?当你按下&lt;Esc&gt;:wq 时会发生什么?
    • 就我而言,什么也没有发生。这是什么神秘的命令,这是 2016 年还是 1996 年?
    • @Homo-Erectus - 大约 4 年前我开始使用 vim,我唯一的遗憾是我没有早点开始。我不认为它浪费时间,你应该尝试一下。请注意,它确实有一个陡峭的学习曲线,但它非常值得。至于命令,我没有太多要补充的。输入 ,输入 :,输入 x 就可以了。
    • @oyalhi 开始使用vim永远不晚
    【解决方案4】:

    只需执行 vim“保存并退出”命令 :wq 即可解决问题。

    为了让 Git 在另一个编辑器中打开它,您需要将 Git core.editor 设置更改为运行所需编辑器的命令。

    git config --global core.editor "command to start sublime text 2"

    【讨论】:

    • 感谢关于将编辑器设置为崇高文本的提示。我确实遇到了一个问题,我必须设置一个--wait 标志:git config --global core.editor "subl --wait"。这可以防止Aborting commit due to empty commit message.
    【解决方案5】:

    这是对您问题的回答...

    我也想知道如何让它在 Sublime Text 2 中打开

    对于 Windows:

    git config --global core.editor "'C:/Program Files/Sublime Text 2/sublime_text.exe'"
    

    检查sublime_text.exe 的路径是否正确并根据需要进行调整。

    对于 Mac/Linux:

    git config --global core.editor "subl -n -w"
    

    如果您收到错误消息,例如:

    错误:编辑器“subl -n -w”出现问题。

    subl创建别名

    sudo ln -s /Applications/Sublime\ Text.app/Contents/SharedSupport/bin/subl /usr/local/bin/subl
    

    再次检查路径是否与您的机器匹配。

    对于 Sublime Text,只需保存 cmd S 并关闭窗口 cmd W 即可返回 git。

    【讨论】:

      猜你喜欢
      • 2020-04-28
      • 1970-01-01
      • 2017-03-07
      • 1970-01-01
      • 1970-01-01
      • 2018-05-31
      • 1970-01-01
      • 1970-01-01
      • 2017-07-25
      相关资源
      最近更新 更多