在OS X上使用vi添加git提交信息

27
我正在学习如何在OS X终端使用Git。它似乎很容易。但是我无法解决一个问题:当我尝试合并两个分支,例如“myTestBranch”到“master”时,该程序会覆盖终端并显示一个新视图,在其中我应该写合并消息。然后,我不知道如何执行“Enter”,保存合并消息,然后返回到主终端视图,在那里我可以继续工作。有人知道这是如何工作的吗?

What I see, when i try to merge


3
这是vi或vim编辑器。你可以输入“:q<enter>”来退出它。你需要学习vi(这可能有些困难),或者将"$EDITOR"定义为更友好的编辑器,比如nano。 - Dan Lowe
这就是我说的,要么使用vi,要么使用vim。无论哪种方式,你都需要学会如何使用,否则可以通过设置$EDITOR变量来使用其他编辑器。nano非常简单易用,还会帮助你显示可以按下的ctrl键以退出、保存等操作。 - Dan Lowe
1
你还应该查看git config中的core.editor配置选项(例如,请参见https://dev59.com/3mw15IYBdhLWcg3wu-E9) - cmbuckley
2个回答

50

如果您没有更改默认的Git编辑器,那么“新视图”就是Vi程序。

要使用Vi保存您的提交信息,请按照以下步骤进行:

  1. 键入i
  2. 编写您的消息
  3. 键入ESC
  4. 键入:wq
  5. 完成! :D

仅键入:q(第4步)不足以保存消息,因为它只是表示退出而已。这就是为什么需要 :wq,它意味着写入退出

您可以使用您喜欢的编辑器(vim、emacs等)来编写提交信息。为此,您可以使用以下配置参数或环境变量,按顺序列出:

  1. GIT_EDITOR 环境变量
  2. core.editor 配置选项
  3. VISUAL 环境变量
  4. EDITOR 环境变量

可以像以下方式使用 core.editor 配置选项:

$git config --global core.editor "nano"

或者如果您想使用环境变量,可以将以下内容添加到您的.bash_profile文件中:

$export GIT_EDITOR="PATH/TO/YOUR/EDITOR"

15
默认情况下,Git会打开Vim作为编辑器。 基本上,您需要输入“I”开始编辑。之后按下“ESC”,然后键入“:q”退出或“:w”保存文件。您还可以将它们组合在一起: “:wq”保存并退出Vim。 有关Vim的更多信息,请查看官方文档。 要更改Vim为其他任何编辑器,请查看Git环境变量或以前类似问题的帖子:如何使Git使用我选择的编辑器提交?

2
学习它有点古怪,但是有一些游戏(http://vim-adventures.com/)可以帮助。 - tadman
非常感谢你,你帮了我很多忙 :) - GitForJava

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接