Git编辑器错误

3
当我尝试运行 git rebase -i 来合并我的提交时,出现了以下错误信息:
/usr/libexec/git-core/git-sh-setup: line 112: mate: command not found

Git如何查找编辑器? 从git-sh-setup文件中,我只能看到这个方法:
git_editor() {                                                                       
    if test -z "${GIT_EDITOR:+set}" 
    then                                                                             
        GIT_EDITOR="$(git var GIT_EDITOR)" || return $?                              
    fi                                                                               
    eval "$GIT_EDITOR" '"$@"'                                                                                                                                                    
} 
2个回答

11

~/.gitconfig中有这样一个设置:

[core]
    editor = mate

如果您已将textmate添加到PATH中,那么只需将其更改为:editor = mate。只要确保它已经添加了。
使用echo $PATH检查是否存在textmate。
您还可以通过git config更改配置选项。要更改的选项是core.editor。例如:
$ git config core.editor        # the current set editor
mate
$ git config core.editor vim    # change editor to vim
$ git config core.editor
vim

如果您希望在所有存储库中使用此设置,请在git config命令后添加--global标志。

$ git config --global core.editor <editor-of-choice>

git help config 手册中可以得知:

core.editor
诸如提交(commit)和标签(tag)等命令,允许你通过启动编辑器来编辑消息,当该变量被设置时,使用该变量的值,并且环境变量GIT_EDITOR未设置。参见git-var(1)。


我添加了一些东西,如果你没意见的话。 - c00kiemon5ter

0

正如您在该脚本中所看到的,它使用了git var,根据git help var的说明:

GIT_EDITOR

git命令使用的文本编辑器。该值在使用时由shell解释。示例: ~/bin/vi$SOME_ENVIRONMENT_VARIABLE"C:\Program Files\Vim\gvim.exe" --nofork

首选顺序为$GIT_EDITOR环境变量,然后是core.editor配置,然后是$VISUAL,然后是$EDITOR,最后是vi


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