Git 基础入门超详细教程

· 阅读约需9分钟

一、什么是 Git?

Git 是一个免费、开源的分布式版本控制系统,用于跟踪代码变更、协作开发和项目管理。

为什么要使用 Git?

  • 📝 记录文件变更历史
  • 👥 多人协作开发
  • 🔄 轻松回退到任意版本
  • 🌿 分支管理,并行开发

二、安装 Git

Windows 系统

  1. 访问 Git 官网
  2. 下载 Windows 版本安装包
  3. 双击运行,一路 Next 即可

macOS 系统

# 使用 Homebrew 安装
brew install git

Linux 系统

# Ubuntu/Debian
sudo apt update
sudo apt install git

# CentOS/RHEL
sudo yum install git

验证安装:

git --version

三、基础配置

安装完成后,首先配置你的用户名和邮箱:

# 配置用户名
git config --global user.name "你的用户名"

# 配置邮箱
git config --global user.email "你的邮箱@example.com"

查看配置:

git config --list

四、Git 核心概念

工作区、暂存区、版本库

  • 工作区(Working Directory):你正在编辑的文件
  • 暂存区(Staging Area):临时存放待提交的变更
  • 版本库(Repository):保存所有提交记录

文件状态

  • Untracked:未跟踪的新文件
  • Modified:已修改但未暂存
  • Staged:已暂存,准备提交
  • Committed:已提交到版本库

五、常用命令详解

1. 初始化仓库

# 在当前目录创建新仓库
git init

# 克隆远程仓库
git clone https://github.com/username/repo.git

2. 查看状态

# 查看文件状态
git status

# 查看简洁状态
git status -s

3. 添加文件到暂存区

# 添加单个文件
git add filename.txt

# 添加所有文件
git add .

# 添加指定类型文件
git add *.txt

4. 提交变更

# 提交暂存区的内容
git commit -m "提交说明"

# 跳过暂存区,直接提交所有已跟踪文件的变更
git commit -a -m "提交说明"

5. 查看历史记录

# 查看完整提交历史
git log

# 查看简洁历史(一行显示)
git log --oneline

# 查看图形化分支历史
git log --graph --oneline --all

6. 查看差异

# 查看工作区与暂存区的差异
git diff

# 查看暂存区与版本库的差异
git diff --staged

六、分支管理

分支是 Git 最强大的功能之一,让你可以并行开发。

1. 查看分支

# 查看本地分支
git branch

# 查看所有分支(包括远程)
git branch -a

2. 创建分支

# 创建新分支
git branch 分支名

# 创建并切换到新分支
git checkout -b 分支名
# 或使用新版命令
git switch -c 分支名

3. 切换分支

# 切换到指定分支
git checkout 分支名
# 或使用新版命令
git switch 分支名

4. 合并分支

# 切换到目标分支(如 main)
git switch main

# 合并指定分支到当前分支
git merge 分支名

5. 删除分支

# 删除已合并的分支
git branch -d 分支名

# 强制删除未合并的分支
git branch -D 分支名

七、远程仓库操作

1. 关联远程仓库

# 添加远程仓库
git remote add origin https://github.com/username/repo.git

# 查看远程仓库
git remote -v

2. 推送代码

# 首次推送(设置上游分支)
git push -u origin main

# 后续推送
git push

3. 拉取代码

# 拉取并合并远程代码
git pull

# 只拉取不合并
git fetch

八、撤销操作

1. 撤销工作区修改

# 撤销指定文件的修改
git checkout -- filename.txt
# 或新版命令
git restore filename.txt

2. 撤销暂存

# 将文件从暂存区撤回工作区
git reset HEAD filename.txt
# 或新版命令
git restore --staged filename.txt

3. 撤销提交

# 撤销最近一次提交,但保留修改
git reset --soft HEAD~1

# 撤销最近一次提交,丢弃修改(谨慎使用!)
git reset --hard HEAD~1

九、实用技巧

1. 忽略文件

创建 .gitignore 文件,指定不需要跟踪的文件:

# 依赖目录
node_modules/
vendor/

# 系统文件
.DS_Store
Thumbs.db

# IDE 配置
.idea/
.vscode/

# 环境变量
.env

2. 保存临时修改

# 保存当前工作进度
git stash

# 查看保存列表
git stash list

# 恢复最近的保存
git stash pop

3. 查看提交统计

# 查看每个人的提交次数
git shortlog -sn

十、常见工作流程

个人开发流程

# 1. 创建功能分支
git switch -c feature/login

# 2. 编写代码...

# 3. 提交变更
git add .
git commit -m "实现登录功能"

# 4. 切换到主分支
git switch main

# 5. 合并功能分支
git merge feature/login

# 6. 推送到远程
git push

团队协作流程

  1. Fork 项目到自己的仓库
  2. Clone 自己的仓库到本地
  3. 创建功能分支开发
  4. 提交并推送到自己的仓库
  5. 提交 Pull Request
  6. 代码审查后合并

总结

掌握以上命令,你就能应对日常开发中的大部分场景。Git 学习曲线虽然有点陡,但一旦掌握,你会发现它是开发中不可或缺的工具。

建议: 多练习,多用 git statusgit log 查看状态,理解每一步操作的含义。

祝学习愉快!🚀