《Git 从入门到进阶》教学大纲
🧭 Git 教学大纲(初学者到进阶)
第一章:Git 基础入门
1.1 版本控制的概念
- 什么是版本控制?(手动备份 vs Git)
- 集中式 vs 分布式版本控制(SVN vs Git)
- Git 的核心思想:快照、分支、提交历史
1.2 Git 安装与环境配置
-
macOS 安装方式(Homebrew、Xcode Command Line Tools)
-
Windows 安装方式(Git for Windows + Git Bash)
-
检查版本:
git --version
-
设置用户名与邮箱:
git config --global user.name "YourName" git config --global user.email "you@example.com"
-
查看配置:
git config --list
1.3 Git 的基本工作流程
- 工作区(Working Directory)
- 暂存区(Staging Area)
- 本地仓库(Repository)
- 远程仓库(Remote)
第二章:本地仓库实战
2.1 初始化与首次提交
- 初始化仓库:
git init
- 添加文件:
git add <filename>
/git add .
- 提交修改:
git commit -m "提交说明"
- 查看状态:
git status
- 查看历史:
git log
、git log --oneline
2.2 撤销与回退操作
- 撤销修改:
git checkout -- <file>
- 取消暂存:
git reset <file>
- 回退版本:
git reset --hard <commit-id>
- 查看提交历史与回退点
2.3 Git忽略文件
- 创建
.gitignore
- 常见忽略文件示例:Python / Node / macOS / Windows 缓存文件
第三章:远程仓库操作(GitHub / Gitee)
3.1 创建远程仓库
- 在 GitHub / Gitee 新建仓库
- SSH 与 HTTPS 的区别
- 生成 SSH 密钥并添加:
macOS 路径~/.ssh/id_rsa.pub
Windows 路径C:\Users\<用户名>\.ssh\id_rsa.pub
3.2 推送与拉取
- 绑定远程仓库:
git remote add origin <url>
- 首次推送:
git push -u origin main
- 拉取更新:
git pull
- 克隆项目:
git clone <url>
第四章:分支管理与并行开发
4.1 创建与切换分支
- 查看分支:
git branch
- 创建分支:
git branch feature/login
- 切换分支:
git checkout feature/login
- 创建并切换:
git checkout -b feature/login
4.2 合并分支
- 合并命令:
git merge feature/login
- 快进合并(Fast-forward) vs 非快进合并
- 查看分支图谱:
git log --graph --oneline --decorate
4.3 删除与保护分支
- 删除本地分支:
git branch -d feature/login
- 删除远程分支:
git push origin --delete feature/login
- 保护 main/master 分支的最佳实践
第五章:代码冲突与解决
5.1 冲突产生的原因
- 多人修改同一文件的同一区域
- 同时创建同名文件/文件夹
5.2 解决冲突步骤
-
冲突标识:
<<<<<<< HEAD 你的修改 ======= 对方的修改 >>>>>>> branch-name
-
手动修改 → 保存 →
git add
→git commit
-
使用 VS Code / SourceTree 可视化解决冲突
5.3 实战案例
- 两个分支分别修改同一行 → 冲突 → 手动合并
- 冲突后的 rebase 流程
第六章:多分支并行开发实战
6.1 分支命名规范
main
:主分支dev
:开发分支feature/xxx
:功能开发hotfix/xxx
:线上紧急修复
6.2 团队协作工作流
- Git Flow 模型
- PR(Pull Request)流程
- Code Review 与合并策略
第七章:高级操作与实用技巧
7.1 git stash
暂存当前工作
- 保存临时修改:
git stash
- 恢复修改:
git stash pop
- 多任务切换场景演示
7.2 git rebase
与历史优化
- 变基与合并的区别
git rebase -i HEAD~3
合并多次提交
7.3 标签与版本发布
- 添加标签:
git tag v1.0
- 推送标签:
git push origin v1.0
7.4 常见问题与陷阱
- 冲突反复出现的原因
- 误删分支如何恢复:
git reflog
detached HEAD
状态
第八章:macOS 与 Windows 使用差异
项目 | macOS | Windows |
---|---|---|
终端工具 | Terminal / iTerm2 | Git Bash / PowerShell |
文件路径 | /Users/username | C:\Users\username |
换行符 | LF(\n ) | CRLF(\r\n ) |
默认编码 | UTF-8 | 可能是 GBK / UTF-8 |
常见问题 | 权限不足(chmod) | 路径长度限制 / 中文路径问题 |
第九章:项目实战与练习
- 创建一个自己的仓库并推送到 GitHub
- 模拟两人协作:拉取、修改、冲突、解决
- 练习多分支开发:feature → dev → main
- 实现版本回退与历史管理
- 制作一个
.gitignore
并体验忽略机制