【问题标题】:Adding a git commit message using vi on OS X在 OS X 上使用 vi 添加 git 提交消息
【发布时间】:2016-02-03 22:50:26
【问题描述】:

我正在学习在 OS X 终端上使用 Git。这似乎真的很容易。但我不能只处理一个问题:当我尝试合并两个分支时,例如“myTestBranch”到“master”,这个程序覆盖了终端并向我展示了一个新的视图,我应该在其中编写合并消息。然后,我不知道如何“回车”,保存合并消息,然后返回主终端视图,我可以继续工作。

有谁知道,它是如何工作的?

【问题讨论】:

  • 即vi或vim编辑器。你可以通过输入:q<enter> 来摆脱它。您要么需要学习 vi(这无疑是更难的一面),要么将 $EDITOR 定义为更友好的东西,例如 nano。
  • 这就是我说的,无论是vi还是vim。无论哪种方式,要么学习如何使用,要么使用 $EDITOR 变量将您的 shell 环境设置为使用不同的编辑器。 nano 使用起来非常简单,可以帮助您显示可以按哪些 ctrl 键来退出、保存等。
  • 您还应该查看 git config 中的 core.editor 配置选项(例如,参见 stackoverflow.com/questions/6435246/…

标签: git macos vim merge vi


【解决方案1】:

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

要使用 Vi 保存您的提交消息,请执行以下步骤:

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

键入:q,第 4 步是不够的,因为它只是意味着 退出 而不保存。这就是为什么你需要:wq,这意味着WRITEQUIT

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

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

使用类似这样的配置选项类型:

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

或者,如果您想使用环境变量,请将类似这样的内容添加到您的 .bash_profile

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

【讨论】:

    【解决方案2】:

    默认情况下,Git 会将 Vim 作为编辑器打开。

    您基本上需要输入“I”才能开始编辑。之后ESC 并输入:q 退出或:w 保存文件。你也可以组合它们::wq 保存并退出 Vim。

    有关 Vim 的更多信息,请查看official documentation

    要为任何其他编辑器更改 Vim,请查看 Git Environment Variables 或更早有类似问题的帖子: How do I make Git use the editor of my choice for commits?

    【讨论】:

    • 学习起来很奇怪,但是are games 有帮助。
    • 非常感谢,你帮了我很多:)
    猜你喜欢
    • 2011-05-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-09-24
    • 1970-01-01
    • 2015-05-02
    • 2013-11-02
    • 2017-01-18
    相关资源
    最近更新 更多