236

我在将 Sublime Text 2 设置为core.editorwith 时遇到问题git

我已经阅读了所有我能找到解决问题的帖子,但仍然没有任何东西对我有用。我正在运行 Windows。

我已经做好了:

git config --global core.editor "'C:/Program Files/Sublime Text 2/sublime_text.exe'"

并尝试使用各种参数,例如-m. 当我打开 my.gitconfig时,里面是这样的:

[user]
    name = Spencer Moran
    email = smoran02@gmail.com
[core]
    editor = 'C:/Program Files/Sublime Text 2/sublime_text.exe'

如果我去 Git 并输入:

README.markdown --edit

自述文件在记事本中打开,而不是在 Sublime Text 中打开。

有谁知道我做错了什么或如何解决这个问题?

4

16 回答 16

375

视窗

崇高文本 2(构建 2181)

最新的Build 2181刚刚添加了对-w(等待)命令行参数的支持。以下配置将允许 ST2 作为 Windows 上的默认 git 编辑器工作。这将允许 git 打开 ST2 以获取提交消息等。

git config --global core.editor "'c:/program files/sublime text 2/sublime_text.exe' -w"

崇高文本 3(构建 3065)

Sublime Text 3 (Build 3065) 添加了subl.exe命令行助手。用于subl.exe -h您可用的选项。我已经在我的 Sublime Text 用户设置中进行了设置hot_exit: trueremember_open_files: true我发现以下 git config 对我很有效。

git config --global core.editor "'c:/program files/sublime text 3/subl.exe' -w"

Mac 和 Linux

通过在终端中输入以下命令,将 Sublime 设置为 Git 的编辑器:

git config --global core.editor "subl -n -w"


使用此 Git 配置,新选项卡将在我的编辑器中打开。我编辑我的提交消息,保存选项卡 ( Ctrl+ S) 并关闭它 ( Ctrl+ W)。

Git 将等到选项卡关闭以继续其工作。

于 2012-02-23T06:18:02.233 回答
100

您可以在 Mac 和 Linux 上使用此命令:

git config --global core.editor "subl -n -w"
于 2012-02-19T13:37:20.420 回答
22

对于Mac崇高文本 3

如果git config --global core.editor "subl -n -w"不起作用,请使用以下git config命令:

$ git config --global core.editor "'/Applications/Sublime Text.app/Contents/SharedSupport/bin/subl' -n -w"

注意:它不包含转义反斜杠。

于 2017-11-14T19:59:58.210 回答
18

对于 [core] 下的文件 ~/.gitconfig 中的 Mac OS X,我不得不把这段代码放在我的最后来解决这个问题。

editor = /Applications/Sublime\\ Text.app/Contents/SharedSupport/bin/subl  -n -w

这是 subl 工作正常但 git 无法访问它的时候。并显示这些错误

subl -n -w: subl: command not found
error: There was a problem with the editor 'subl -n -w'.
于 2016-06-08T12:28:53.957 回答
7

在 cygwin/zsh 中对我有用的东西:

在 /usr/local/bin 创建 subl_git 文件

#!/bin/bash
/cygdrive/c/Program\ Files/Sublime\ Text\ 2/sublime_text.exe -w -n `cygpath -w $@`

在 gitconfig 中:

editor = /usr/local/bin/subl_git
于 2014-01-13T14:27:29.550 回答
6

使用 Sublime Text 2 和以下配置,如果关闭 git commit 的注释文件时没有任何反应:

git config --global core.editor "'c:/program files/sublime text 2/sublime_text.exe' -w"

如果在 Sublime 中关闭 COMMIT_EDITMSG 注释文件时 git 提交没有完成,我发现这可能是因为您在管理员模式下运行 CMD(并且已经在非管理员模式下打开了 Sublime Text)。我有同样的问题,当我在正常模式下启动我的CMD 时它对我有用。

Ps:只是想回答@david在已接受答案的评论中指出的问题,但我无法发表评论,因为我是新来的......所以我做了一个新的答案,因为我认为这可以对一些遇到问题的人有用。

于 2015-03-09T16:10:51.690 回答
5

我刚刚在 PowerShell(Windows 命令行工具,也可用作 GithubforWindows 上的默认命令行)的帮助下成功完成

只需在“C:\Users\%username%\My Documents”上创建一个文件夹“WindowsPowerShell”。然后,创建一个名为“profile.ps1”的文件。确保您具有正确的文件扩展名,.ps1 而不是 .txt。在 profile.ps1 中,放置这一行来设置别名命令:

Set-Alias subl 'c:\program files\sublime text 2\sublime_text.exe'

确保你机器上的 sublime 目录是正确的。您还可以在此处查看配置详细信息。

现在,我可以通过 PowerShell 命令使用 Sublime Text 2 编辑文件,只需键入:

subl filename

希望这是有用的...

于 2012-12-28T08:06:23.733 回答
3

今天晚上我在 Windows 中使用 git 编辑器遇到了同样的问题,终于搞定了。

您需要使用bash 语法设置编辑器路径并使用 DOS 8.3 格式来避免空格

这不起作用(对我来说):

git config --global core.editor "C://Program files/Sublime Text/sublime_text.exe"

这样做:

git config --global core.editor /C/PROGRA~1/SUBLIME~1/sublime_text.exe

您可以使用dir /x获取目录的 DOS 8.3 名称

于 2014-12-23T00:13:18.923 回答
3

在下面的MacOS(Mojave)上为Sublime 3工作:

git config --global core.editor "/Applications/Sublime\ Text.app/Contents/SharedSupport/bin/subl -n -w"

于 2020-01-01T15:20:37.497 回答
1

出于某种原因,我只是在为此苦苦挣扎,上面的例子都没有对我有用。然而,这是我的解决方案:

 git config --global core.editor "'c:/<path to sublime>/sublime_text.exe' -w $*"

您特别需要' '路径周围和$*args 末尾的 ,全部在" ".

于 2014-12-20T09:15:29.387 回答
1

对于 MAC 用户,我可以说 Sublime 使用以下内容:

首先使用命令检查 .gitconfig 文件:

  1. cd ~
  2. ls -la
  3. cat .gitconfig

现在可以添加此配置:

git config --global core.editor "subl -n -wl1"

哪里l1会告诉从第 1 行开始。

于 2015-02-02T01:19:34.013 回答
1

如果您是 Mac 用户,那么方法如下:

git config --global core.editor '/Applications/Sublime\ Text.app/Contents/SharedSupport/bin/subl'
于 2015-10-05T14:03:30.963 回答
1

好吧,即使在将它设置为我的 core.editor 之后,我在从 gitbash 调用 notepad++ 时也遇到了一些麻烦。

我通过将以下行附加到我的 gitbash 安装目录中的 .bashrc 文件来解决所有问题。

alias npp='winpty "C:/Program Files (x86)/Notepad++/notepad++.exe"'

所以,我可以使用别名“npp”调用记事本++。如果您将目录更改为您要使用的相应编辑器,我觉得这可以帮助您。

于 2017-02-14T18:15:57.653 回答
0

对于 Windows 7,我发现以下解决方案有效:

git config --global core.editor "C:/Program\ Files/Sublime\ Text\ 2/sublime_text.exe -n -w"
于 2016-08-24T22:52:59.287 回答
0

在 Windows 上,如果您正在安装 git,您可以选择其他编辑器并给出以下命令行。C:\Program Files\Sublime Text 3\sublime_text.exe -w 安装程序映像

于 2018-11-09T18:38:57.927 回答
0

我还没有看到任何有关 Windows 的更新实例,允许 Git 安装主动选择 Sublime Text 作为您的默认文本编辑器,而没有原始覆盖代码的所有喧嚣...... Sublime Text 在(重新)安装 Git 时显示为选项

于 2019-01-25T21:38:53.863 回答