必须配置 Git 全局 user.name 和 user.email,否则 git commit 失败;通过 git config --global 命令在终端设置,写入 ~/.gitconfig,VSCode 仅读取不提供图形化配置。

Git 全局用户名和邮箱没设,git commit 会报错
不配置 user.name 和 user.email,每次 git commit 都会失败,提示类似:
*** Please tell me who you are.这个错误不是 VSCode 特有,而是 Git 本身校验机制——它需要知道“谁提交了代码”,哪怕只是本地仓库。
Run
git config --global user.email "you@example.com"
git config --global user.name "Your Name"
用 git config --global 命令直接设置(推荐)
VSCode 本身不提供图形化入口来设 Git 全局用户信息,它依赖系统级 Git 配置。最可靠的方式是打开终端(命令行),运行以下两条命令:
git config --global user.name "Your Real Name"
git config --global user.email "your.email@example.com"
注意点:
-
--global表示写入用户主目录下的~/.gitconfig(Windows 是%USERPROFILE%\.gitconfig),对所有仓库生效 - 名字建议用真实姓名或常用 ID,不要带空格或特殊符号(如
@、/);邮箱必须是有效格式,GitHub/GitLab 等平台靠它关联提交记录 - 如果之前设过但想改,重复执行即可覆盖,无需先删
检查是否生效:用 git config --global --get
设完别急着关终端,马上验证:
git config --global --get user.name
git config --global --get user.email
如果返回空,说明没写成功,常见原因:
- 权限问题:Windows 下以普通用户身份运行终端,避免用管理员模式乱写配置
- 拼写错误:
user.name不是username,--global不能写成-g(后者只对当前仓库生效) - 多个 Git 安装冲突:比如同时装了 Git for Windows 和 GitHub Desktop 自带的 Git,
which git或where git查看实际调用的是哪个
VSCode 里看不到配置?那是正常的
VSCode 的源代码管理面板(Source Control)只读取 Git 配置,不提供编辑界面。你不会在设置里找到「Git 用户名」输入框——这不是 VSCode 的功能缺失,而是设计如此。它完全复用命令行 Git 的配置体系。唯一相关设置是:git.path(指定 Git 可执行文件路径),仅当 VSCode 找不到 Git 时才需要手动填。
真正容易被忽略的是:项目级配置会覆盖全局配置。如果某个仓库下执行过 git config user.email "other@xxx.com"(没加 --global),那在这个仓库里 git commit 就会用这个邮箱,而不是全局值。排查时记得用 git config --get user.email(不加 --global)看当前仓库的实际生效值。










