将文件扩展名添加到COMMIT_EDITMSG



git version 2.10.2.windows.1

我使用记事本++作为git的提交编辑器。我想在运行git commit -v时使用 Diff 语言打开编辑器,这样我就可以更轻松地浏览我的差异(Diff 突出显示 +/- 行不同(。打开进行编辑的文件 git 名为 COMMIT_EDITMSG(无扩展名(。Notepad++ 无法将无扩展名文件与语言本机关联(请参阅此问题(。

如何配置 git 以更改它为编辑提交而打开的文件?git 提交文档引用此文件,但仅描述其用途:

$GIT_DIR/COMMIT_EDITMSG

此文件包含正在进行的提交的提交消息。如果 git commit 在创建提交之前由于错误而退出,则用户提供的任何提交消息(例如,在编辑器会话中(都将在此文件中可用,但将被下次调用 git commit 覆盖。

Git 不提供更改用于提交消息的文件名的方法。它在源代码中是硬编码的,各种代码片段(更不用说插件和钩子(取决于这些确切的名称。

通常,编辑器提供某种模式匹配,以将文件类型与任意文件名模式相关联。听起来Notepad++没有,因此您可能需要使用插件,不同的技术或不同的编辑器来编辑提交消息。

例如,Vim支持在文件的开头和结尾使用"modelines"来设置文件级变量。您可以添加以下行以强制使用"diff"语法突出显示文件:

# vi:syntax=diff

如果你找到一个功能性的模式线风格的插件,如另一个问题所述,你可以使用 prepare-commit-message 钩子在底部插入一个模式线,这将导致文件根据需要突出显示。

最新更新