如何全局配置git以使用特定的编辑器(例如vim)提交消息?
当前回答
对于希望使用Kinetics文本编辑器的Windows用户
创建一个名为“k.sh”的文件,添加以下文本并放置在主目录(~)中:
winpty "C:\Program Files (x86)\Kinesics Text Editor\x64\k.exe" $1
在git提示符下键入:
git config --global core.editor ~/k.sh
其他回答
要使Visual Studio代码(vscode)成为默认的git编辑器,请执行以下操作:
git config --global core.editor "code --wait"
在Git配置中设置core.editor:
git config --global core.editor "nano"
设置GIT_EDITOR环境变量:
export GIT_EDITOR=nano
在windows 7中,当添加“Sublime”编辑器时,它仍然给我一个错误:
由于提交消息为空,正在中止提交。
Sublime无法保持焦点。
为了解决这个问题,我打开了c:\users/username/文件夹中的.gitconfig文件,并在单引号外添加了下面一行--wait选项。
[core]
editor = 'F:/Program Files/Sublime Text 2/sublime_text.exe' --wait
希望对Sublime面临类似问题的人有所帮助。
在Windows 7中,将编辑器设置为记事本++
打开任何文本编辑器。打开此文件:C:\Users\YOUR_USERNAME\.gitconfig将此部分添加到底部:
对于64位Notepad++,请使用:
[core]
editor = 'C:/Program Files/Notepad++/notepad++.exe' -multiInst -notabbar
对于32位Notepad++,请使用:
[core]
editor = 'C:/Program Files (x86)/Notepad++/notepad++.exe' -multiInst -notabbar
保存并关闭文件。使用git提交时,只需编写gitcommit并按Enter键。它将弹出记事本++。在文件顶部写入提交消息,然后保存并关闭文件。完成!
这为找到这个问题的人提供了一个答案,他们可能希望链接vim以外的编辑器。
Github提供的链接资源很可能会在编辑更新时保持最新,即使SO(包括这个)上的答案不是这样。
将文本编辑器与git关联
Github的帖子准确地显示了各种编辑器在命令行中输入的内容,包括特定于每个编辑器的选项/标志,以使其与git配合得更好。
记事本++:git-config--global-core.editor“'C:/Program Files(x86)/Notepad++/nopad++.exe'-multeInst-notibbar-nosession-noPlugin”
Sublime文本:git-config--全局core.editor“'c:/Program Files\sublimitext 3/subl.exe'-w”
原子:git-config--全局core.editor“atom--等待”
上面的命令假设您的编辑器已安装在windows计算机的默认目录中。
这些命令基本上将双引号之间的文本添加到主目录中的.gitconfig。在windows计算机上,主页可能是C:\Users\您的用户名,其中您的用户名是您的登录名。在命令行中,您可以通过键入cd~来访问此目录。
例如,上面的命令将在[core]部分下面添加以下行,如下所示:[核心]editor='C:/Program Files\sublime text 3/subl.exe'-w
如果您有不同的编辑器,只需使用上述任一方法替换为编辑器的路径。(希望不需要任何标志来实现最佳使用。)
推荐文章
- 如何更改Git日志日期格式
- 如何在Vim注释掉一个Python代码块
- git pull -rebase和git pull -ff-only之间的区别
- GitHub -致命:无法读取用户名https://github.com':没有这样的文件或目录
- 撤消git平分错误
- 使用.gitconfig配置diff工具
- 如何配置Mac OS X术语,使git有颜色?
- Visual Studio Code: .git文件夹/文件隐藏
- “node_modules”文件夹应该包含在git存储库中吗
- 如何在可视块模式插入?
- 为什么git-rebase给了我合并冲突,而我所做的只是压缩提交?
- 当我试图推到原点时,为什么Git告诉我“没有这样的远程‘原点’”?
- 如何从远程分支中挑选?
- 如何查看一个分支中的哪些提交不在另一个分支中?
- 如何取消在github上的拉请求?