2、环境准备:在Windows、macOS、Linux上安装Git,配置用户信息与默认编辑器,验证安装成功
工欲善其事,必先利其器。在开始使用Git进行版本控制之前,我们需要在本地开发环境中正确安装并配置Git。这不仅是学习的第一步,也是后续所有操作的基础。本章将系统讲解在三大主流操作系统(Windows、macOS、Linux)上安装Git的多种方法,深入剖析Git配置文件的层级与优先级,并指导你完成用户信息、默认编辑器等关键配置,最后通过一系列命令验证安装与配置是否成功。无论你是前端开发者、后端工程师还是运维人员,掌握这一环节都将为后续的版本控制实践打下坚实基础。
上图清晰地展示了Git环境准备的整体链路:从三大平台的安装方式,到配置文件的层级关系,再到核心配置项与验证流程。接下来,我们将逐一深入每个环节,确保你不仅知道“怎么做”,更理解“为什么这么做”。
2.1 核心原理:Git的安装本质与配置体系
Git本质上是一个用C语言编写的命令行工具集,其安装过程的核心是将可执行文件(如 git、git-remote-https 等)放置到系统PATH环境变量所包含的目录中,并创建必要的辅助文件(如man手册、shell补全脚本)。安装完成后,Git的运行不依赖图形界面,但为了提升用户体验,官方和社区提供了多种图形化前端(如Git GUI、SourceTree、VS Code集成),这些工具底层仍然调用Git命令行。
Git的配置体系采用三级作用域设计,这一设计是理解Git行为的关键。配置存储于不同的文件中,且存在优先级覆盖关系:
| 配置级别 | 配置文件位置 | 作用范围 | 优先级 |
|---|---|---|---|
| system | Windows: C:\Program Files\Git\etc\gitconfigmacOS/Linux: /etc/gitconfig |
系统所有用户 | 最低 |
| global | Windows: C:\Users\<用户名>\.gitconfigmacOS/Linux: ~/.gitconfig |
当前用户的所有仓库 | 中 |
| local | 仓库目录下: .git/config |
仅当前仓库 | 最高 |
理解这一层级至关重要:当你在不同项目中需要不同的身份(例如公司项目使用公司邮箱,个人项目使用个人邮箱)时,只需在对应仓库中设置local级别的配置即可覆盖global设置,而无需频繁修改全局配置。
2.2 操作流程:三大平台安装与配置实战
2.2.1 Windows平台安装
Windows用户最推荐的方式是使用官方安装包 Git for Windows,它自带了一个完整的Bash模拟环境(Git Bash),提供类Unix的命令行体验。安装时需要注意几个关键选项:
- 选择编辑器:默认使用Vim,但建议选择“Use Visual Studio Code as Git's default editor”(若已安装VS Code),或选择“Use Notepad++”。
- 调整PATH环境:推荐选择“Git from the command line and also from 3rd-party software”,这会将Git添加到系统PATH,使CMD和PowerShell也能直接使用git命令。
- 行尾转换:建议选择“Checkout as-is, commit as-is”(不转换),避免因CRLF/LF差异导致的跨平台问题。
此外,Windows 10及以上版本可通过 winget install --id Git.Git -e --source winget 命令快速安装,或使用 choco install git(Chocolatey包管理器)。
2.2.2 macOS平台安装
macOS用户有两种主流选择:
- Homebrew(推荐):执行
brew install git,会自动安装最新稳定版并处理依赖。 - 官方安装包:从Git官网下载macOS安装器,双击安装,但这种方式不会自动更新。
值得注意的是,macOS自带的Git(位于 /usr/bin/git)版本较旧,且受系统SIP保护,不建议直接使用。安装Homebrew版后,Git会位于 /opt/homebrew/bin/git(Apple Silicon)或 /usr/local/bin/git(Intel),需确保该路径在PATH中优先于系统路径。
2.2.3 Linux平台安装
Linux发行版众多,安装方式略有差异:
# Debian/Ubuntu
sudo apt update
sudo apt install git
# CentOS/RHEL 7+
sudo yum install git
# Fedora
sudo dnf install git
# Arch Linux
sudo pacman -S git
若需要最新版本,可从源码编译:下载源码包,执行 make prefix=/usr/local all 和 sudo make prefix=/usr/local install,但此方式需要安装编译工具链(gcc、make、curl-devel等),适合对版本有特殊要求的场景。
2.3 配置用户信息与默认编辑器
安装完成后,第一件事就是配置你的身份信息。Git每次提交都会记录作者和提交者信息,这些信息将永久保存在历史记录中,因此务必使用真实姓名和常用邮箱。
# 设置全局用户名和邮箱
git config --global user.name "Zhang San"
git config --global user.email "zhangsan@example.com"
# 设置默认编辑器(以VS Code为例)
git config --global core.editor "code --wait"
# 设置默认分支名为main(可选,Git 2.28+支持)
git config --global init.defaultBranch main
关于 core.editor 的配置,不同编辑器命令不同:
| 编辑器 | 配置命令 | 说明 |
|---|---|---|
| VS Code | code --wait |
需在VS Code中安装“Shell Command: Install 'code' command in PATH” |
| Sublime Text | subl -n -w |
需安装命令行工具 |
| Notepad++ | "C:/Program Files/Notepad++/notepad++.exe" -multiInst -notabbar |
Windows专用,注意路径转义 |
| Vim | vim |
默认值,无需配置 |
配置完成后,可通过 git config --list 查看所有生效配置,或通过 git config user.name 单独查看某项配置。
2.4 案例拆解:从零到一验证Git环境
为了确保安装与配置完全正确,我们设计一个完整的验证流程。假设你是一名刚入职的Java开发工程师,公司要求使用Git进行代码管理,你的电脑是Windows 11系统,已安装VS Code。
初始状态:Git已通过官方安装包安装,但未进行任何配置。
操作步骤:
- 验证安装:打开Git Bash,输入
git --version,输出git version 2.40.0.windows.1,确认安装成功。 - 配置身份:执行
git config --global user.name "Zhang San"和git config --global user.email "zhangsan@company.com"。 - 配置编辑器:在VS Code中按
Ctrl+Shift+P,输入“Shell Command: Install 'code' command in PATH”,然后执行git config --global core.editor "code --wait"。 - 创建测试仓库:在
D:\git-test目录下执行git init,初始化一个空仓库。 - 创建并提交文件:新建
README.md,写入“# Git Test”,执行git add README.md和git commit -m "Initial commit"。此时会调用VS Code作为编辑器(若未指定-m参数),验证编辑器配置是否生效。 - 检查提交信息:执行
git log --oneline,输出abc1234 (HEAD -> main) Initial commit,确认提交成功且作者信息正确。
结果对比:若配置错误(如邮箱拼写错误),提交记录中会显示错误信息,后续可通过 git commit --amend --reset-author 修正。若编辑器配置失败,提交时会报错“Terminal is dumb, but EDITOR unset”,此时需重新配置 core.editor。
复盘经验:验证环境时,建议使用一个临时目录,避免污染真实项目。同时,养成先配置后使用的习惯,避免因身份信息缺失导致提交失败。
2.5 常见误区与总结复盘
在环境准备阶段,初学者常犯以下错误:
误区一:忽略行尾转换设置。Windows与Linux/macOS的换行符不同(CRLF vs LF),若在Windows上使用默认的“Checkout Windows-style, commit Unix-style”设置,可能导致跨平台协作时出现大量文件变更。建议团队统一使用“Checkout as-is, commit as-is”或配置 .gitattributes 文件。
误区二:全局配置与局部配置混淆。在多个项目中使用不同身份时,忘记在特定仓库设置local配置,导致提交者信息错误。记住:local配置优先于global,且只影响当前仓库。
经验提示:配置完成后,建议立即执行 git config --list --show-origin,该命令会显示每个配置项来自哪个文件,帮助你快速定位配置来源。此外,使用 git config --global --edit 可直接在默认编辑器中打开配置文件,便于批量修改。