如何全局配置git以使用特定的编辑器(例如vim)提交消息?
当前回答
Windows:将记事本设置为默认的提交消息编辑器
git config --global core.editor notepad.exe
按Ctrl+S保存提交消息。要放弃,只需关闭记事本窗口而不保存。
如果您点击保存快捷方式,然后决定中止,请转到文件->另存为,在打开的对话框中,将“另存为类型”更改为“所有文件(*.*)”。您将看到一个名为“COMMIT_EDITMSG”的文件。删除它,然后关闭记事本窗口。
编辑:或者,更容易地从打开的记事本窗口中删除所有内容,然后单击保存。(感谢姆沃恩利的评论!)
我认为对于诸如提交消息之类的小记录,记事本是最好的,因为它很简单,有窗口,很快就能打开。当你有一大堆插件和东西时,甚至你的崇高也可能需要一两秒钟才能被激发起来。
其他回答
Run:
git config --global core.editor "vim"
来自man git commit:
环境和配置变量用于编辑提交日志消息的编辑器将从GIT_editor环境变量、core.editor配置变量、VISUAL环境变量或editor环境变数中选择(按顺序)。
设置Git的默认编辑器
选择一个:
在Git配置中设置core.editor:git-config—全局core.editor“vim”设置GIT_EDITOR环境变量:导出GIT_EDITOR=vim
设置所有程序的默认编辑器
设置标准化的VISUAL和EDITOR环境变量*:
export VISUAL=vim
export EDITOR="$VISUAL"
注意:不一定需要同时设置这两个,但某些程序可能不会使用更正确的VISUAL。参见视觉与编辑。
修复兼容性问题
有些编辑器需要--wait标志,否则将打开空白页。例如:
Sublime文本(如果设置正确;或使用可执行文件的完整路径代替subl):export VISUAL=“subl--等待”VS代码(添加shell命令后):export VISUAL=“code--wait”
要使Visual Studio代码(vscode)成为默认的git编辑器,请执行以下操作:
git config --global core.editor "code --wait"
只需尝试EDITOR=vim-gitcommit。
或者可以通过在bashrc中导出EDITOR=vim将EDITOR设置为vim。
只是因为我来这里是为了寻找一个一次性的解决方案(在我的情况下,我通常使用vim,但这一次我想使用VS代码),其他人可能也想知道:
GIT_EDITOR='code -w' git rebase -i …
这是我的git/hub版本,仅用于上下文:
git version 2.24.2 (Apple Git-127)
hub version 2.14.1
推荐文章
- 如何获得Git存储库中的Git存储库名称?
- 当git说它正在“解析delta”时,它实际上在做什么?
- Git命令将一个文件夹移动到另一个文件夹
- 同一行上有多个命令
- 如何将所有文本转换为小写在Vim
- 在单个文件中重新启动/撤消冲突解决方案
- Visual Studio代码如何解决合并冲突与git?
- 无法推送到远程分支,无法解析到分支
- Git:如何将数据库重置为特定的提交?
- 如何在合并期间使用Git和命令行保存本地文件或远程文件?
- 能够用一个命令推到所有git遥控器?
- 重新基于Git合并提交
- 忽略已经签入目录的内容?
- 如何从windows cmd保存git提交消息?
- (Mac) -bash: __git_ps1:命令未找到