You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何修改Visual Studio创建Git仓库时的默认Add project files提交信息

如何永久修改Visual Studio Git菜单创建仓库时的默认初始提交信息

问题描述

我尝试修改Visual Studio中通过内置Git菜单首次创建仓库时自动生成的默认提交信息,该默认内容会自动匹配当前计算机的系统语言:

  • 英文环境下默认内容为 Add project files.
  • 意大利语环境下默认内容为 Aggiungere i file di progetto.

相关效果参考测试仓库截图:
Visual Studio默认初始提交信息效果截图

请问是否有方法可以一劳永逸地修改该默认提交信息?

此前我曾误以为Visual Studio创建仓库时会默认将提交推送到GitHub,无法在本地使用git amend命令修改,全网检索到的相关解决方案都需要用到git rebase命令;后续我找到了“仅创建本地仓库”的选项,此时可以使用git amend修改提交信息,但每次创建仓库都要手动修改十分耗时,因此希望找到永久修改默认值的方法。


解决方案

Visual Studio本身没有在图形化设置界面提供修改该初始提交默认文案的入口,由于VS的Git相关能力全部调用本地安装的Git客户端实现,你可以通过Git全局配置实现永久生效的自定义,以下是两种可直接落地的方案:

方案1:配置Git全局初始化模板(推荐)

该方案为Git原生支持的全局配置,所有新初始化的仓库(包括VS、命令行、其他GUI客户端创建的仓库)都会自动套用自定义配置,一次配置永久生效:

  1. 本地新建一个空文件夹作为Git模板目录,例如命名为git-global-template
  2. 在该文件夹内打开命令行,执行命令初始化裸模板仓库:
    git init --bare
    
  3. 进入模板仓库的配置文件,写入你需要的自定义提交规则,可直接执行以下命令完成配置(将示例中的提交信息替换为你需要的内容):
    # 配置默认提交身份(可和你全局Git配置保持一致)
    git config --file config user.name "你的常用提交用户名"
    git config --file config user.email "你的常用提交邮箱"
    # 写入自定义初始提交信息模板
    echo "feat: 初始化项目" > default_commit_msg
    git config --file config commit.template default_commit_msg
    
  4. 回到任意命令行窗口,执行全局Git配置,指定初始化时使用该模板目录:
    git config --global init.templateDir "刚才创建的git-global-template文件夹的完整绝对路径"
    

配置完成后,后续在Visual Studio中创建新仓库时,Git会自动加载该模板配置,初始提交将直接使用你预设的文案。

方案2:配置全局Git初始化钩子自动替换默认提交

如果你不想修改默认初始化模板,也可以通过全局钩子,在检测到VS生成默认初始提交时自动替换为自定义内容:

  1. 本地新建一个空文件夹作为全局Git钩子目录,例如命名为git-global-hooks
  2. 在该文件夹内新建名为post-init的无后缀文件,写入以下内容(将示例提交信息替换为你需要的内容,正则匹配规则可自行扩展覆盖更多系统语言的默认文案):
    #!/bin/sh
    # 检测当前仓库的最新提交是否为VS生成的默认初始提交
    if git log -1 --format=%s 2>/dev/null | grep -qE "Add project files|Aggiungere i file di progetto"; then
        # 匹配成功则替换为自定义提交信息
        git commit --amend -m "feat: 初始化项目" --no-verify
    fi
    
  3. 如果你使用Git Bash/WSL/macOS/Linux系统,需要给该钩子文件添加可执行权限:
    chmod +x post-init
    
  4. 执行全局Git配置,指定全局钩子目录:
    git config --global core.hooksPath "刚才创建的git-global-hooks文件夹的完整绝对路径"
    

补充说明

如果后续有特殊场景需要使用VS原生默认提交信息,只需要在创建仓库前临时执行git config --global --unset core.hooksPath或git config --global --unset init.templateDir取消全局配置即可,操作完成后再重新设置全局配置,不需要反复修改自定义内容。


内容的提问来源于stack exchange,提问作者4c30

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.26 22:27:24