我正在试用Windows上的Git。我到了尝试“git commit”的地步,我得到了这个错误:

终端是哑的,但没有视觉也 编辑器定义。请提供 消息使用-m或-F选项。

所以我发现我需要一个叫做EDITOR的环境变量。没有问题。我把它设置为指向记事本。这几乎奏效了。默认的提交消息在记事本中打开。但是记事本不支持换行。我出去得到了notepad++,但我不知道如何将notepad++设置为%EDITOR%,使其与Git正常工作。

我没有嫁给notepad++。在这一点上,我不介意我使用什么编辑器。我只是希望能够在编辑器中而不是在命令行中输入提交消息(使用-m)。

那些在Windows上使用Git的人:你使用什么工具来编辑你的提交消息,你必须做什么才能让它工作?


当前回答

Atom和Windows 10

我在桌面上右键单击Atom图标,然后单击属性。 复制了起始位置路径 用Windows资源管理器找到了"atom。exe" 我在Git Bash中输入: Git配置——全局核心。编辑C: /用户/ YOURNAMEUSER / AppData /本地/ atom / app-1.7.4 / atom.exe”

注意:我把所有\都换成了/。我在我的主目录中创建了一个.bashrc,并使用/来设置我的主目录,它工作了,所以我假设/将是去的方式。

原子编辑器git git-bash windows-10

其他回答

我只是直接使用TortoiseGit。它与我的PuTTY公钥完美地集成在一起。

它有一个完美的提交消息编辑器。

这是为我使用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`"

不管怎样,我只是在玩这个,发现下面的工作对我来说很好:

git config --global core.editor "'C:/Program Files/TextPad 5/TextPad.exe' -m"

我不认为CMD喜欢单引号,所以你必须使用双引号“来指定空格嵌入字符串参数”。

Cygwin(我相信它是Git的Bash的底层平台)另一方面喜欢“和”;你可以指定一个类似cmd的路径,使用/而不是\,只要字符串是引号,即在这个例子中,使用单引号。

-m覆盖/表示使用多个编辑器,不需要在末尾加%*。

那些在Windows上使用Git的人:你使用什么工具来编辑你的提交消息,你必须做什么才能让它工作?

在我的git编辑器和通用代码编辑器中,我发现在Windows和Linux中最有用的工具是Sublime Text 3。它工作得很好,但需要一点设置才能让它正确,所以我在这里完整地记录了这一点:

如何让Git使用我选择的编辑器进行提交?- Sublime Text 3作为Git编辑器的最佳设置(Windows和Linux指令)

关于我的主编辑器的边注:对于大型项目,我使用Eclipse作为我的主编辑器,Sublime Text 3作为我的git编辑器,当我需要使用它的高级功能时,如多光标模式,垂直/列选择模式等。对于中小型项目,我只使用Sublime Text 3本身。有关Eclipse的设置说明,请参阅我的PDF文档。

我很难让Git与写字板、科莫多编辑器以及我给它的几乎所有其他编辑器合作。大多数打开以供编辑,但Git显然不会等待保存/关闭发生。

作为拐杖,我一直在做。

git commit -m "Fixed the LoadAll method"

让事情继续发展。它往往会使我的提交消息比应该的要短一些,但显然在Windows版本的Git上还有一些工作要做。

GitGUI也不是那么糟糕。它需要一点定位,但在那之后,它工作得很好。