【问题标题】:Git Pull opens VIM even with --no-edit即使使用 --no-edit,Git Pull 也会打开 VIM
【发布时间】:2016-08-15 11:29:54
【问题描述】:

“Vim 在隐式非冲突合并后打开请求提交消息”似乎是一个相对常见的问题,似乎是 relatively simple answer:git config --global core.mergeoptions --no-edit

不幸的是,这似乎不适用于我或班上其他 15 人中的至少 8 人,而且我们的导师也有点困惑(尽管公平地说,他没有时间研究它超出了快速的谷歌搜索或两个)。 不是什么大问题,因为您可以使用:q 轻松逃脱,但我们想知道答案,我的谷歌搜索返回 Stack Overflow以--no-edit 为解决方案的问题(通过核心或每次拉动完成时)。

我的 .gitconfig(减去个人信息):

[mergetool "kdiff3"]
        path = "/c/Program Files/KDiff3/kdiff3.exe"
[merge]
        tool = kdiff3
[core]
        mergeoptions = --no-edit
[mergetool]
        keepBackup = false

然而:

.

有谁知道为什么修复不起作用(即:“你在拼写 'options' 时搞错了”),或者是否有更好/更可靠的方法来解决这个问题?

【问题讨论】:

  • 我认为你应该有一个分支而不是核心所以s/core/branch "master"/
  • core.mergeoptions 不做任何事情(不检查它,所以设置它没有效果)。请参阅该答案中的 cmets,以及同一问题中的其他答案。
  • @torek 我链接的那个最初的答案除了“这似乎不起作用”之外没有任何 cmets,其他答案暗示这两种解决方案(导出 autoedit=no one 和 git合并 --no-edit) 是相等的。您解释 core.mergeoptions 不存在的评论当时不存在,而我完全没有看到 cmbuckly 的评论。对于那个很抱歉。不过感谢您的解释:)

标签: git vim git-merge git-pull git-config


【解决方案1】:

您需要在.bash_profile 中添加添加export GIT_MERGE_AUTOEDIT=no 并打开一个新的bash。

您可以使用下一个 bash 命令来做到这一点:

echo 'export GIT_MERGE_AUTOEDIT=no' >> $HOME/.bash_profile && . $HOME/.bash_profile

希望对你有帮助:D

【讨论】:

  • 感谢您提供方便的 bash 命令。 :) 我在另一个答案上看到的答案我误解了(可能是因为睡眠不足,老实说)暗示这两件事基本上是在做同样的事情。我会尝试一下,如果它有效,请将其标记为有用的 bash 命令的已接受答案:) (可能明天我才能真正检查出来,因为我现在快凌晨 2 点了)。
【解决方案2】:

通过将export GIT_MERGE_AUTOEDIT=no 添加到.bash_profile 文件来解决此问题。

【讨论】:

  • 感谢您的回答和您的宝贵时间。 :)
猜你喜欢
  • 2021-12-22
  • 2021-11-17
  • 2012-12-26
  • 2023-03-10
  • 2013-08-29
  • 1970-01-01
  • 2013-04-02
  • 2015-12-11
  • 1970-01-01
相关资源
最近更新 更多