一、版本控制基础
1.1 提交与暂存
git add . – 添加所有修改到暂存区git commit -m "提交信息" – 提交暂存区内容到本地仓库git status – 查看工作区和暂存区状态
1.2 撤销与回退
git restore . – 丢弃工作区的所有修改git restore <file> – 丢弃指定文件的修改git reset --hard HEAD~1 – 回退到上一次提交(危险操作)git reset --hard <commit-hash> – 回退到指定提交git reset --soft HEAD~1 – 撤销上次提交但保留更改
二、历史查看
2.1 提交记录
git log --oneline – 简洁形式查看提交历史git log dev – 查看dev分支的提交历史git log --oneline --graph --all – 图形化查看所有分支历史
2.2 操作记录
git reflog – 查看所有操作历史(可恢复误删提交)
三、分支管理
3.1 分支操作
git branch – 查看所有分支git switch develop – 切换到develop分支git switch -c new-branch – 创建并切换到新分支git branch -d <branch> – 删除指定分支
3.2 分支合并
git merge develop – 将develop分支合并到当前分支git merge --no-ff develop – 非快进式合并(保留分支历史)
四、代码整合
4.1 变基
git rebase master – 将当前分支变基到master分支git rebase -i HEAD~3 – 交互式变基(合并/修改最近3次提交)
4.2 储藏
git stash – 储藏当前工作区的修改git stash list – 查看储藏列表git stash pop – 恢复最新储藏并删除记录git stash apply – 恢复储藏但不删除记录git stash drop – 删除指定的储藏
五、清理操作
5.1 清理未跟踪文件
git clean -f – 删除未跟踪的文件git clean -fd – 删除未跟踪的文件和目录git clean -n – 预览将被删除的文件git clean -nd – 预览将被删除的文件和目录
六、标签管理
git tag v1.0 – 创建轻量标签v1.0git tag -a v1.0 -m "版本说明" – 创建带注释的标签git tag – 查看所有标签git tag -d v1.0 – 删除标签v1.0
🔧 实用技巧
- 提交规范:尽量使用有意义的提交信息,遵循约定式提交
- 安全操作:
- 执行
reset --hard前确保工作区已保存 - 推送前先拉取远程更新避免冲突
- 重要分支(如master/main)设置保护规则
- 执行
- 推荐工作流:
# 日常开发流程
git switch -c feature/xxx # 创建功能分支
git add . # 添加修改
git commit -m "feat: 添加xx功能"
git switch main # 切回主分支
git pull origin main # 拉取最新代码
git switch feature/xxx # 切回功能分支
git rebase main # 变基到最新主分支
git switch main
git merge feature/xxx # 合并到主分支
4. 常见问题解决:
- 提交了错误文件:使用
git reset --soft撤销 - 提交信息写错:
git commit --amend - 分支合并混乱:
git rebase整理历史
💡 温馨提示
- 定期使用
git status查看状态 - 重要操作前做好备份
- 团队协作时及时拉取远程更新
- 合理使用
.gitignore文件排除不需要版本控制的文件
