【问题标题】:git rebase could not execute editorgit rebase 无法执行编辑器
【发布时间】:2013-06-26 10:00:46
【问题描述】:

我正在尝试使用 rebase 压缩一些 git 提交。当我运行这个时:

git rebase -i HEAD

我收到此错误:

/usr/lib/git-core/git-rebase: 1: eval: /usr/bin/mate: not found
Could not execute editor

我试图更改 git config 编辑器变量,但我还没有让它工作。现在我的配置文件显示如下:

[core]
    editor = /usr/bin/vim

我正在运行 Ubuntu 13.04

有什么想法吗?

【问题讨论】:

  • 使用 git reset --hard 'commit' 怎么样?
  • 你检查过$GIT_DIR/config~/.gitconfig吗?
  • 是的,我都检查过了。

标签: linux git ubuntu git-config


【解决方案1】:

检查以确保您的环境中未设置GIT_EDITOR。它优先于 core.editor。

【讨论】:

  • 您能详细说明一下吗?我将 editor = /usr/bin/vim 添加到特定项目以及我的系统的 git 配置文件中,但这不起作用。这是你在说什么还是我应该寻找其他东西?
  • 我认为关键是环境变量GIT_EDITOR 可能会覆盖您的项目和/或全局设置,这有时很有用。
  • 我不认为这是我的问题。它是一个 Rails 项目,项目的 git 配置文件和我的核心说的一样。
  • 您应该与env | grep GIT_EDITOR联系。如果它是空的,那么这不是问题。我怀疑它不是空的并且设置为/usr/bin/mate
  • @ruby_newbie 它很可能在您的 ~/.bashrc 文件中(如果您使用 bash 作为 shell)。您可以在该 shell 中运行 unset GIT_EDITOR 以删除环境变量,但您需要检查您的 ~/.bashrc 并修复它以确保它没有被首先设置。
【解决方案2】:

做这样的事

$ git config --global core.editor emacs

其中 emacs 粘贴编辑器的名称

【讨论】:

    【解决方案3】:

    作为附加措施,您可以查看 sequence.editor 配置选项:

    [sequence]
        editor = /usr/bin/vim
    

    或使用 GIT_SEQUENCE_EDITOR=/usr/bin/vim 环境变量覆盖它的行为。

    更多详情请访问:git-config.txt-sequenceeditor

    【讨论】:

      猜你喜欢
      • 2021-09-12
      • 1970-01-01
      • 2015-05-19
      • 2021-01-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-01-02
      • 2015-04-24
      相关资源
      最近更新 更多