如何更改Git的默认编辑器

34

一个月前我刚开始使用Git。当时它已经为我设置了TextMate作为默认编辑器来提交。但是,我想将默认编辑器更改为我已安装的TextWrangler。我在网上找到了一行代码可以在终端中输入以实现此操作。于是,我打开了终端并输入了以下命令:

cd Desktop
cd "projectName"
git config --global core.editor TextWrangler
git status
git add.
git commit  //then the error comes up

错误信息如下: 错误:无法运行TextWrangler:没有那个文件或目录 错误:编辑器'TextWrangler'出现问题。 请使用-m或-F选项提供消息。

我不知道这是什么意思或者我做错了什么。我确定这是一个显而易见的错误,但有人可以解释一下如何修复它吗?


2
请使用我选择的编辑器让Git进行提交操作。 - Makkes
3个回答

50

在以上评论的帮助下,我刚刚回答了自己的问题...要将TextWrangler作为Git的默认文本编辑器,您必须打开TextWrangler,单击工具栏中的TextWrangler,然后从下拉菜单中选择“安装命令行工具”。然后进入命令行并键入:

git config --global core.editor "edit -w"

编辑是命令行中理解的命令,意味着打开TextWrangler文件。


做得好,感谢您的跟进发布! - thornomad
4
如果您从苹果应用商店下载了TextWrangler,则没有“安装命令行工具”选项。您需要访问http://www.barebones.com/support/textwrangler/faqs.html#cmdlinetools以下载这些工具。注意,此回答已被删除,但信息似乎仍然有用。 - ptomato
1
如果有人想知道命令行工具选项在哪里,那么这个选项已经从App Store版本的TextWrangler中删除了。但是你可以从这里获取它:http://pine.barebones.com/files/tw-cmdline-tools-453.zip - Sridhar Sarnobat
@chharvey -w 等待 TextWrangler 关闭文件。通常,在文件参数在 TextWrangler 中打开后,编辑工具会立即退出。如果没有传递 -w,Git 将会中止,因此它将无法正常工作。有关更多信息,请参见 man edit - Lucio Paiva
1
我已经从Mac应用商店安装了TextWrangler,并且在不安装命令行工具的情况下使其正常工作。只需使用“open -n -W -a TextWrangler”,并确保您的“TextWrangler>首选项>应用程序>当TextWrangler变为活动状态时:”设置为“不执行任何操作”。 - DLRdave
显示剩余2条评论

5

针对@thornomad的后续

在Git中更换编辑器的命令是(其中一种可能性)

git config --global core.editor "mate -w",引号内的字符串是从终端调用编辑器的完整命令行


好的,那么这行代码刚才成功地将其设置回了TextMate,但是我尝试将其设置为TextWrangler:git config --global core.editor "TextWrangler -w",然后再次出现了错误。我还尝试了各种变体(例如“wrangler”,“Text Wrangler”等),但都没有成功... - jac300

3

您是否使用的是Mac电脑?如果您在命令行(Terminal.app)中运行TextWrangler,TextWrangler是否会打开?

我猜测git希望您传递给它一个在您的PATH中的可执行文件的名称... 我还猜测TextWrangler不在其中(这只是一个猜测,没有相关经验)。

尝试将core.editor更改为vim,看看是否仍然出现错误。

此外,请查看此线程(可能有所帮助)。


是的,在Mac上。我对使用终端也不是很有经验,所以我不确定如何从命令行打开TextWrangler,但我可以弄清楚并查看是否存在问题。同时,我使用下面的答案成功地让我再次使用文本编辑器,但是在使用文本编辑器时,相同的代码无法工作。仍然不知道为什么。 - jac300
谢谢,你的回答帮我找到了问题所在——我使用的 Text Wrangler 版本没有安装正确的命令行工具,因此无法识别“textWrangler”命令。不得不升级到 BBEdit。 - jac300
我添加了一个链接,可能会帮助你使用TextWrangler。 - thornomad

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