三个区域
| 区域 |
内容 |
如何进入 |
| 工作区 |
正在编辑的真实文件 |
— |
| 暂存区 |
准备提交的改动 |
git add |
| 本地仓库 |
已提交的历史记录 |
git commit |
提交三步走
git status # 1.(可选)查看状态
git add <文件> 或 git add . # 2. 暂存改动
git commit -m "提交信息" # 3. 提交
提交消息规范:类型: 描述
| 标识符 |
说明 |
示例 |
feat |
新功能(最常用) |
feat: 添加用户登录功能 |
fix |
修复 bug(最常用) |
fix: 修复登录超时问题 |
docs |
仅文档变更 |
docs: 更新API使用说明 |
style |
代码格式调整(不影响功能) |
style: 调整代码缩进格式 |
refactor |
代码重构(非功能变更) |
refactor: 重构用户认证模块 |
perf |
性能优化 |
perf: 优化数据库查询性能 |
test |
测试相关 |
test: 添加登录功能单元测试 |
chore |
构建过程或辅助工具变更 |
chore: 更新依赖包版本 |
revert |
回滚之前的提交 |
revert: 回滚错误的合并提交 |
修改最近一次提交
git commit --amend
- 仅对最新提交有效:可修改提交消息,也可把暂存区的新改动并入上一次提交
- ⚠️ 已推送到远程的提交不要 amend,否则会改写历史,协作时产生冲突
回滚文件到某个提交
git restore --source <提交id> .
- 用指定提交的文件覆盖当前工作区
- ⚠️ 操作前先确保工作区干净(无未提交改动),restore 覆盖文件不会有任何提示,未保存的修改会丢失
- 只还原文件,不改变提交历史(区别于
git revert 生成新提交撤销、git reset 移动 HEAD)