git 首次使用必做的 .gitconfig 配置(用户名/邮箱/常用项)
第一次用 Git 最该做的就是把用户名和邮箱配好,否则无法提交。本文讲清 git config 的三种作用域、首次必配项、以及常用编辑器等增强配置。
场景:你刚装上 Git,第一次执行 git commit 就报错让你设置身份。别急,git config 花两分钟配好,后续一劳永逸。
首次必配:用户名和邮箱
git config --global user.name "你的名字"
git config --global user.email "you@example.com"
这两条必须配置,否则无法提交。Git 会把它们记录到每次提交里,作为作者标识。邮箱通常用你 GitHub/GitLab 注册的邮箱。
验证配置
git config --global --list # 列出全局配置
git config user.name # 查某个单项
三种配置作用域
| 作用域 | 命令 | 生效范围 | 优先级 |
|---|---|---|---|
| 系统 | --system | 整台机器所有用户 | 最低 |
| 全局 | --global | 当前用户所有仓库 | 中 |
| 本地 | --local(默认) | 仅当前仓库 | 最高 |
想为某个项目单独设身份,进该项目后不加 --global:
git config user.name "项目专用名"
常用增强配置
# 默认编辑器(提交时用)
git config --global core.editor "code --wait" # VS Code
# 中文文件名正常显示
git config --global core.quotepath false
# 换行符处理(Windows 推荐)
git config --global core.autocrlf true
# 常用别名(见下)
git config --global alias.st status
git config --global alias.co checkout
git config --global alias.lg "log --oneline --graph"
直接编辑 .gitconfig 文件
全局配置存在用户主目录的 .gitconfig 里,也可手动编辑:
code ~/.gitconfig # 用编辑器打开
内容形如:
[user]
name = 张三
email = zhang@example.com
[core]
editor = code --wait
[alias]
st = status
修改/删除配置
git config --global --unset user.email # 删除某条
git config --global --edit # 打开编辑器修改
常见问题
- 改了不生效:确认没被某个仓库的本地配置覆盖,进仓库用
git config user.name看实际值。 - 想清空重来:直接删
~/.gitconfig或git config --global --remove-section user。 - 公司项目想用公司邮箱:该项目单独
git config user.email "公司邮箱"。
一句话速记
git config --global user.name/email 首次必配;按项目特殊需求可用不带 global 的本地配置覆盖。
?
常见问题 FAQ
不配置用户名和邮箱能提交吗?
不能。Git 会报 "Please tell me who you are",并提示你设置 user.name 和 user.email。这是首次使用最常遇到的报错。
git config 的 --global、--system、--local 有什么区别?
--global 对当前用户所有仓库生效;--local 只对当前仓库生效(默认);--system 对整个系统生效。通常用 --global 设置个人身份。
不同项目要用不同作者信息怎么设置?
进入某个项目后,不加 --global 执行 git config user.email "xxx" 即可为该项目单独设置,会覆盖全局配置。
.gitconfig 文件存在哪里?
全局配置在用户主目录的 .gitconfig 文件(Windows: C:\\Users\\你的用户名\\.gitconfig;Mac/Linux: ~/.gitconfig)。本地配置在当前仓库 .git/config。