我正在试用Windows上的Git。我到了尝试“git commit”的地步,我得到了这个错误:
终端是哑的,但没有视觉也
编辑器定义。请提供
消息使用-m或-F选项。
所以我发现我需要一个叫做EDITOR的环境变量。没有问题。我把它设置为指向记事本。这几乎奏效了。默认的提交消息在记事本中打开。但是记事本不支持换行。我出去得到了notepad++,但我不知道如何将notepad++设置为%EDITOR%,使其与Git正常工作。
我没有嫁给notepad++。在这一点上,我不介意我使用什么编辑器。我只是希望能够在编辑器中而不是在命令行中输入提交消息(使用-m)。
那些在Windows上使用Git的人:你使用什么工具来编辑你的提交消息,你必须做什么才能让它工作?
根据Darren的回答,要使用notepad++,你可以简单地这样做(都在一行上):
git config --global core.editor "'C:/Program Files/Notepad++/notepad++.exe' -multiInst -notabbar -nosession -noPlugin"
显然,C:/Program Files/ notepad++ /notepad++.exe部分应该是系统上notepad++可执行文件的路径。例如,可能是C:/Program Files (x86)/ notepad++ /notepad++.exe。
这对我来说很有魔力。
文章如何将notepad++设置为默认的Git提交编辑器而不是Vim解释了该命令的参数。
notepad++工作得很好,尽管我选择坚持使用Notepad, -m,有时甚至是内置的“编辑”。
您在使用notepad++时遇到的问题与Git如何启动编辑器可执行文件有关。我对此的解决方案是将环境变量编辑器设置为一个批处理文件,而不是实际的编辑器可执行文件,这样做如下:
start /WAIT "E:\PortableApps\Notepad++Portable\Notepad++Portable.exe" %*
/WAIT告诉命令行会话停止,直到应用程序退出,这样当Git愉快地等待您时,您就可以按照自己的意愿进行编辑。%*将批处理文件的所有参数传递给notepad++。
C:\src> echo %EDITOR%
C:\tools\runeditor.bat
这是为我使用Cygwin和TextPad 6工作(编辑:它也与TextPad 5工作,只要你对脚本做出明显的改变),想必模型也可以用于其他编辑器:
文件~ / .gitconfig:
[core]
editor = ~/script/textpad.sh
文件~ /脚本/ textpad.sh:
#!/bin/bash
APP_PATH=`cygpath "c:/program files (x86)/textpad 6/textpad.exe"`
FILE_PATH=`cygpath -w $1`
"$APP_PATH" -m "$FILE_PATH"
这一行代码也同样有效:
文件~/script/textpad.sh(选项2):
"`cygpath "c:/program files (x86)/textpad 6/textpad.exe"`" -m "`cygpath -w $1`"