跳到主要内容

Git 环境配置

在本章中,我们将学习如何安装 Git 和配置开发环境。

什么是 Git?​

Git 是一个分布式版本控制系统,由 Linus Torvalds 于 2005 年创建。目前是世界上最流行的版本控制系统,几乎所有软件开发人员都需要掌握。

在 Windows 上安装 Git​

方法一:从官网下载安装​

  1. 打开浏览器,访问 Git 官网
  2. 点击 "Download for Windows" 按钮
  3. 运行下载的安装程序
  4. 按照提示完成安装,建议选择以下选项:
    • 使用 "Git Bash here"
    • 使用 "Git LFS"
    • 选择 "Use Visual Studio Code as Git's default editor"

方法二:通过 winget 安装​

如果已安装 winget,可以运行:

winget install Git.Git

验证安装​

打开 Git Bash 或命令提示符,输入以下命令:

git --version

如果安装成功,会显示类似以下的版本信息:

git version 2.46.0

在 macOS 上安装 Git​

方法一:通过 Homebrew 安装​

如果你已安装 Homebrew,可以运行:

brew install git

方法二:安装 Xcode Command Line Tools​

运行以下命令:

xcode-select --install

验证安装​

打开终端,输入:

git --version

在 Linux 上安装 Git​

大多数 Linux 发行版已经预装了 Git。你可以通过以下命令检查:

git --version

如果需要安装或更新,使用包管理器:

# Debian/Ubuntu
sudo apt update
sudo apt install git

# CentOS/RHEL
sudo yum install git

# Fedora
sudo dnf install git

# Arch Linux
sudo pacman -S git

配置 Git​

安装完成后,需要配置你的身份信息,这样每次提交时都会记录你的信息。

配置用户名和邮箱​

git config --global user.name "你的名字"
git config --global user.email "your@email.com"

例如:

git config --global user.name "张三"
git config --global user.email "zhangsan@example.com"

查看配置​

# 查看所有配置
git config --list

# 查看具体配置
git config user.name
git config user.email

配置文本编辑器​

如果需要使用特定的文本编辑器:

# 使用 VS Code
git config --global core.editor "code --wait"

# 使用 Vim
git config --global core.editor "vim"

# 使用 nano
git config --global core.editor "nano"

配置默认分支名​

Git 2.28+ 支持配置默认分支名:

git config --global init.defaultBranch main

常用配置 aliases​

创建简短的命令别名:

# 查看提交历史
git config --global alias.st status
git config --global alias.co checkout
git config --global alias.br branch
git config --global alias.ci commit

# 查看历史(美化输出)
git config --global alias.lg "log --color --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit"

配置换行符​

Windows 和 Linux 的换行符不同,需要配置:

# Windows
git config --global core.autocrlf true

# Linux/macOS
git config --global core.autocrlf input

# 跨平台项目
git config --global core.autocrlf true

配置 SSH 密钥(可选)​

如果你需要与远程仓库(如 GitHub)进行 SSH 通信,需要配置 SSH 密钥。

生成 SSH 密钥​

ssh-keygen -t ed25519 -C "your@email.com"

按回车键接受默认文件位置,然后输入密码(可选)。

添加到 SSH Agent​

eval "$(ssh-agent -s)"
ssh-add ~/.ssh/id_ed25519

添加公钥到 GitHub​

  1. 复制公钥内容:

    cat ~/.ssh/id_ed25519.pub
  2. 登录 GitHub,进入 Settings → SSH and GPG keys

  3. 点击 "New SSH key",粘贴公钥内容

Git 工作区概念​

在创建第一个仓库前,先了解 Git 的三个重要区域:

  • 工作区:你当前编辑文件的目录
  • 暂存区:准备下次提交的文件列表
  • 版本库:存储所有提交历史的地方

第一个 Git 仓库​

安装好环境后,让我们创建第一个 Git 仓库:

# 创建新目录
mkdir my-project
cd my-project

# 初始化仓库
git init

# 查看状态
git status

你应该会看到类似输出:

Initialized empty Git repository in D:/my-project/.git/
On branch main

No commits yet

nothing to commit (create/delete some files and track them)

初始化后,Git 会在目录下创建 .git 文件夹,这就是版本库所在的位置。

Git GUI 工具​

虽然命令行是使用 Git 最强大的方式,但图形化工具可以提供更直观的体验,特别适合初学者或需要进行复杂操作时。

跨平台 GUI 工具​

GitHub Desktop​

GitHub 官方推出的免费 GUI 工具,界面简洁,与 GitHub 深度集成。

  • 支持系统:Windows、macOS
  • 特点:操作简单,适合初学者,与 GitHub 无缝集成
  • 下载:https://desktop.github.com/

GitKraken​

功能强大的跨平台 Git GUI,界面美观。

  • 支持系统:Windows、macOS、Linux
  • 特点:可视化分支管理、合并冲突解决、支持 GitLab/Bitbucket
  • 许可:免费版功能有限,专业版收费

Sourcetree​

Atlassian 出品的免费 GUI 工具。

Git GUI​

Git 自带的基础 GUI 工具。

# 启动 Git GUI
git gui

# 启动版本历史可视化
gitk

特点:功能基础,无需额外安装,适合简单操作。

选择建议​

用户类型推荐工具
初学者GitHub Desktop、VS Code 内置 Git
进阶用户Sourcetree、GitKraken
专业开发者命令行 + IDE 集成
需要可视化分支GitKraken、VS Code Git Graph 插件

IDE 集成​

现代 IDE 都内置了 Git 支持,让你在不离开编辑器的情况下完成大部分 Git 操作。

Visual Studio Code​

VS Code 内置了强大的 Git 支持:

基本操作:

  • 源代码管理面板:查看修改、暂存文件、提交
  • 内置差异比较:直观查看文件修改
  • 分支管理:创建、切换、合并分支
  • 冲突解决:可视化冲突解决工具

推荐扩展:

# Git Graph - 分支可视化
# GitLens - Git 增强工具
# Git History - 查看文件历史

配置 VS Code 作为 Git 编辑器:

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

JetBrains IDE 系列​

IntelliJ IDEA、PyCharm、WebStorm 等 JetBrains IDE 都有出色的 Git 集成:

主要功能:

  • 版本控制工具窗口:查看本地修改、历史记录
  • 注解查看:查看每行代码的作者和提交信息
  • 分支比较:可视化比较分支差异
  • 冲突解决:三方合并工具

配置路径:Settings → Version Control → Git

Eclipse​

Eclipse 的 EGit 插件提供 Git 支持:

# 安装 EGit
# Help → Eclipse Marketplace → 搜索 "EGit"

Vim/Neovim​

Vim 用户可以使用插件增强 Git 支持:

" vim-fugitive - Git 封装
Plug 'tpope/vim-fugitive'

" vim-gitgutter - 显示修改标记
Plug 'airblade/vim-gitgutter'

" gv.vim - Git 提交浏览器
Plug 'tpope/vim-fugitive'
Plug 'junegunn/gv.vim'

Git Bash vs PowerShell vs CMD​

Git Bash​

Git Bash 是 Windows 上最常用的 Git 环境:

优点:

  • 提供 Unix 风格的命令行环境
  • 支持常用 Unix 命令(ls, grep, find 等)
  • Git 命令输出格式化良好
  • 支持 SSH 密钥管理

配置技巧:

# 自定义 Git Bash 提示符
# 编辑 ~/.bashrc
parse_git_branch() {
git branch 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/ (\1)/'
}

export PS1="\u@\h \[\033[33m\]\w\[\033[32m\]\$(parse_git_branch)\[\033[00m\] $ "

PowerShell​

PowerShell 用户可以使用 posh-git 模块:

# 安装 posh-git
Install-Module posh-git -Scope CurrentUser

# 导入模块
Import-Module posh-git

# 添加到配置文件
Add-PoshGitToProfile -AllHosts

posh-git 提供:

  • Git 状态提示符
  • 命令补全
  • 分支名着色

CMD​

虽然可以使用 CMD,但功能有限:

# 基本命令可以工作
git status
git commit -m "message"

不建议使用 CMD 的原因:

  • 不支持 Unix 风格命令
  • 缺少自动补全
  • 输出格式不如 Git Bash

配置层级​

Git 配置有三个层级,优先级从高到低:

1. 本地仓库配置​

# 只对当前仓库有效
git config user.name "项目专用名"

# 配置文件位置
# .git/config

2. 全局配置​

# 对当前用户的所有仓库有效
git config --global user.name "你的名字"

# 配置文件位置
# ~/.gitconfig (Linux/macOS)
# C:\Users\用户名\.gitconfig (Windows)

3. 系统配置​

# 对所有用户的所有仓库有效(需要管理员权限)
git config --system user.name "系统默认名"

# 配置文件位置
# /etc/gitconfig (Linux/macOS)
# C:\Program Files\Git\etc\gitconfig (Windows)

查看配置来源​

# 查看所有配置及其来源
git config --list --show-origin

# 输出示例
file:/etc/gitconfig credential.helper=manager
file:C:/Users/张三/.gitconfig user.name=张三
file:.git/config user.email=project@example.com

多账户配置​

如果你有多个 Git 账户(如个人和工作账户),可以使用条件配置:

# ~/.gitconfig
[user]
name = 默认用户
email = default@example.com

[includeIf "gitdir:~/work/"]
path = ~/.gitconfig-work

[includeIf "gitdir:~/personal/"]
path = ~/.gitconfig-personal
# ~/.gitconfig-work
[user]
name = 工作用户
email = work@company.com
# ~/.gitconfig-personal
[user]
name = 个人用户
email = personal@gmail.com

这样,在 ~/work/ 目录下的仓库会使用工作账户,在 ~/personal/ 目录下的仓库会使用个人账户。

小结​

本章我们学习了:

  1. 如何在 Windows、macOS、Linux 上安装 Git
  2. 配置 Git 用户名和邮箱
  3. 配置文本编辑器和常用别名
  4. 配置 SSH 密钥(可选)
  5. GUI 工具和 IDE 集成的选择
  6. 配置层级和多账户配置
  7. 创建第一个 Git 仓库

在下一章中,我们将深入学习 Git 的基本操作。

练习​

  1. 在你的电脑上安装 Git,验证安装成功
  2. 配置你的用户名和邮箱
  3. 尝试配置一个常用别名(如 git st 代替 git status)
  4. 选择一个 GUI 工具或 IDE 扩展,熟悉其基本操作
  5. 创建一个新的 Git 仓库
  6. 尝试生成 SSH 密钥(如果需要连接远程仓库)