跳过正文
  1. 教程/
  2. Git 入门到实操:新手从 0 到会用提交、分支、回退和远程仓库/

Git 的安装与配置

·2658 字·6 分钟
Evan Wu
作者
Evan Wu
记录 AI、技术实践、效率工具、项目经验与学习思考。
Git Mastery - 系列专栏
✦ 3: 本文

Git 是学习版本控制和代码协作时最常用的工具。无论你是管理代码项目、维护个人博客,还是使用 GitHub、GitLab、Gitee 等平台,都需要先在本地电脑安装 Git。

本文会介绍如何在 Windows、macOS 和 Linux 上安装 Git,并完成安装后的基础配置。

检查 Git 是否已安装
#

打开终端,执行:

git --version

如果 Git 已经安装,会显示类似内容:

git version 2.x.x

如果终端提示找不到命令,则需要先安装 Git。


不同系统的安装方式
#

  • Windows 推荐安装 Git for Windows
  • macOS 可以使用系统自带工具或 Homebrew 安装
  • Linux 通常使用系统包管理器安装

Windows
#

Windows 用户推荐安装 Git for Windows

安装完成后,你会得到两个常用工具:

  • Git Bash
  • Git GUI

其中最常用的是 Git Bash,它提供了一个类似 Linux/macOS 终端的命令行环境。

下载安装包
#

进入 Git for Windows 下载页面,下载最新版本的 Windows 安装程序。(有意思的是 Windows 版本 Git 安装包也是托管在GitHub)

下载完成后,双击安装程序。

安装时推荐选项
#

如果你是初学者,大部分选项保持默认即可。重点注意以下几个地方。

  • 选择默认编辑器

    安装过程中会让你选择 Git 默认编辑器。

    如果你使用 VS Code,可以选择:

    Use Visual Studio Code as Git's default editor

    如果不确定,也可以保持默认,后续再做更改。默认编辑器修改方法

  • 配置 PATH 环境变量

    推荐选择:

    Git from the command line and also from 3rd-party software

    这样你可以在 PowerShell、CMD、VS Code 终端里直接使用 git 命令。

  • 配置换行符

    Windows 推荐选择默认选项:

    Checkout Windows-style, commit Unix-style line endings

    它对应的配置是:

    git config --global core.autocrlf true

    这个选项可以减少 Windows 和 Linux/macOS 之间换行符不一致的问题。

安装完成后检查版本:
#

git --version

macOS
#

macOS 安装 Git 有两种常见方式。

方法一:使用系统命令安装
#

打开终端,输入:

xcode-select --install

系统会弹出安装窗口,点击“安装”。Apple 的 Command Line Tools 中包含 Git 等开发工具。

安装完成后,执行:

git --version

如果能看到版本号,就说明 Git 已经安装成功。

方法二:使用 Homebrew 安装
#

如果你已经安装了 Homebrew,也可以使用:

brew install git

安装完成后检查版本:
#

git --version
提示

如果你希望使用 Homebrew 安装的 Git,建议确认当前 Git 路径:

which git

Linux
#

Linux 一般通过系统包管理器安装 Git。

Ubuntu / Debian
#

sudo apt update
sudo apt install git

Fedora
#

sudo dnf install git

CentOS / RHEL
#

sudo yum install git

Arch Linux
#

sudo pacman -S git

安装完成后检查版本:
#

git --version

基础配置
#

安装完成后,建议先配置提交记录中使用的用户名和邮箱。Git 会把这两项信息写入每一次提交,用来标识该提交的作者。

需要注意的是,这里的用户名并不是 GitHub、GitLab 的登录用户名,邮箱也不是用于登录 Git 的账号密码。它们只是提交记录中的作者信息

配置用户名和邮箱
#

设置用户名邮箱

# 设置用户名
git config --global user.name "Evan Wu"

# 设置邮箱
git config --global user.email "evanwu@example.com".

--global 表示该配置会应用于当前操作系统用户使用的所有 Git 仓库。

设置默认分支名称
#

可以把新仓库的默认分支设置为 main:

git config --global init.defaultBranch main

之后执行:

git init

新仓库的初始分支通常会命名为 main。

配置默认编辑器
#

设置 Vim:

git config --global core.editor "vim"

设置 Visual Studio Code:

git config --global core.editor "code --wait"
笔记

Git 在需要填写较长提交信息或处理合并时,可能会打开默认编辑器。

配置作用域
#

Git 的配置并不一定对所有仓库都生效。每项配置都有自己的作用范围,这个范围称为配置作用域。

例如,你可以设置一个适用于所有个人项目的全局邮箱,也可以在某个公司项目中单独设置工作邮箱。Git 会根据配置所属的作用域,决定当前仓库最终使用哪个值。

Git 常见的配置作用域包括系统级、全局级和仓库级。

系统级配置
#

系统级配置对当前电脑上的所有用户和所有 Git 仓库生效。

配置时使用:

git config --system 配置项 配置值

例如:

git config --system core.autocrlf true

全局配置
#

全局配置对当前操作系统用户的所有 Git 仓库生效。

配置时使用 --global

git config --global user.name "Evan Wu"
git config --global user.email "evanwu@example.com"

用户名、邮箱、默认分支和默认编辑器通常适合设置为全局配置。

全局配置文件通常位于:

~/.gitconfig

Windows 中一般对应:

C:\Users\你的用户名\.gitconfig

当前仓库配置
#

仓库级配置只对当前 Git 仓库生效,也称为本地配置。

进入仓库目录后,不添加 --global

git config user.name "Evan Work"
git config user.email "evanwu@company.example"

这些配置通常保存在当前仓库的:

.git/config

仓库级配置适合个人项目和工作项目需要使用不同身份信息的情况。 系统级配置通常需要管理员权限,个人用户一般很少直接修改。

配置优先级
#

当同一个配置项同时存在于多个作用域时,范围更具体的配置通常会覆盖范围更大的配置。

常见优先级为:

当前仓库配置 > 用户全局配置 > 系统配置

例如,全局邮箱是:

evanwu@example.com

而当前仓库配置了:

evanwu@company.example

那么在当前仓库中提交时,Git 会使用公司邮箱;其他没有单独配置邮箱的仓库仍然使用全局邮箱。

检查 Git 配置
#

配置完成后,可以通过以下命令确认设置是否生效。

查看全部配置
#

# 全局配置
git config --list

# 查看当前用户的全局配置
git config --global --list

查看单个配置项
#

# 查看当前生效的用户名和邮箱
git config user.name
git config user.email

# 如果只想查看全局值
git config --global user.name
git config --global user.email

查看配置来源和作用域
#

git config --list --show-origin --show-scope

该命令可以显示:

  • 配置项和值;
  • 配置所属的作用域;
  • 配置来自哪个文件;
  • 同名配置是否在不同作用域中重复出现。

常见问题
#

找不到 git 命令
#

如果终端提示类似:

git: command not found

或者:

'git' 不是内部或外部命令

通常说明 Git 没有安装成功,或者 Git 没有加入系统环境变量。

Windows 用户可以重新安装 Git,并确认安装时选择了:

Git from the command line and also from 3rd-party software

macOS 和 Linux 用户可以重新执行对应系统的安装命令。

出现 Author identity unknown
#

完整提示通常类似:

Author identity unknown

Please tell me who you are.

这表示尚未配置 Git 提交所需的用户名和邮箱。

执行:

git config --global user.name "你的名字"
git config --global user.email "你的邮箱"

然后检查配置:

git config --global user.name
git config --global user.email

配置完成后,重新执行提交命令即可。

修改全局邮箱后仍使用旧邮箱
#

当前仓库可能设置了本地邮箱,而本地配置会覆盖全局配置。

执行:

git config --list --show-origin --show-scope

如果看到:

global file:/Users/evan/.gitconfig  user.email=personal@example.com 
local  file:.git/config             user.email=work@example.com

说明当前仓库使用的是本地邮箱:

work@example.com

可以在仓库目录中修改:

git config user.email "new@example.com"

或者删除当前仓库的邮箱配置,使其重新使用全局邮箱:

git config --unset user.email

Windows 应该使用哪个终端
#

Windows 上推荐初学者使用 Git Bash 或 VS Code 终端。

Git Bash 对 Git 命令更友好,也更接近 Linux/macOS 的命令行环境。

如果你已经熟悉 PowerShell,也可以继续使用 PowerShell。只要能正常执行:

git --version

就没有问题。

Windows 出现换行符警告
#

Windows 用户可能看到:

LF will be replaced by CRLF

或者:

CRLF will be replaced by LF

这是 Git 在处理 Windows 的 CRLF 和 Linux、macOS 的 LF 换行符时给出的提示,通常不代表提交失败。

Windows 常见配置是:

git config --global core.autocrlf true

macOS 和 Linux 通常可以使用:

git config --global core.autocrlf input

团队项目应优先遵循项目已有的 .gitattributes 配置,不建议仅为了消除提示而随意修改换行符策略。

用户名和邮箱配置错误怎么办
#

重新执行同一个配置命令即可覆盖旧值:

git config --global user.name "新的用户名"
git config --global user.email "new@example.com"

删除某项全局配置:

git config --global --unset user.name
git config --global --unset user.email

删除当前仓库中的配置:

git config --unset user.name
git config --unset user.email

操作完成后,可以再次检查:

git config --list --show-origin --show-scope

确认旧配置是否已经移除

Git Mastery - 系列专栏
✦ 3: 本文