⚠️ Alpha内测版本警告:此为早期内部构建版本,尚不完整且可能存在错误,欢迎大家提Issue反馈问题或建议
Skip to content

8.1.1 后悔药怎么吃——Git 基础命令

Git 的四个核心命令——add、commit、push、pull——构成了日常开发的基本操作闭环。

核心概念:三个区域

区域说明类比
工作区你正在编辑的文件草稿纸
暂存区准备提交的变更购物车
本地仓库已提交的版本历史个人存档
远程仓库团队共享的代码库云端备份

四大核心命令

1. git add:将变更加入暂存区

bash
# 添加单个文件
git add src/index.ts

# 添加所有变更
git add .

# 添加特定类型文件
git add "*.tsx"

# 交互式添加(逐个确认)
git add -p

注意git add . 会添加当前目录下所有变更,确保 .gitignore 配置正确。

2. git commit:创建版本快照

bash
# 提交并附带消息
git commit -m "feat: 添加用户登录功能"

# 添加并提交(跳过 add)
git commit -am "fix: 修复登录验证问题"

# 修改上一次提交
git commit --amend -m "feat: 添加用户登录功能(含验证)"

最佳实践

  • 每次提交应该是一个"逻辑完整"的变更
  • 提交信息遵循 Conventional Commits 规范
  • 避免提交未完成或有明显错误的代码

3. git push:推送到远程仓库

bash
# 推送当前分支
git push

# 首次推送新分支
git push -u origin feat/login

# 强制推送(慎用!)
git push --force

警告--force 会覆盖远程历史,只在自己独占的分支上使用。

4. git pull:拉取远程更新

bash
# 拉取并合并
git pull

# 拉取并变基(保持提交历史线性)
git pull --rebase

# 只获取不合并
git fetch

推荐:使用 git pull --rebase 可以保持提交历史整洁。

常用辅助命令

bash
# 查看当前状态
git status

# 查看变更内容
git diff

# 查看提交历史
git log --oneline -10

# 查看远程仓库信息
git remote -v

典型工作流程

bash
# 1. 开始工作前,拉取最新代码
git pull --rebase

# 2. 进行开发...

# 3. 查看变更
git status
git diff

# 4. 添加变更到暂存区
git add .

# 5. 提交变更
git commit -m "feat: 完成用户注册页面"

# 6. 推送到远程
git push

AI 协作指南

向 AI 描述 Git 操作需求时,说明:

  • 你想完成什么操作(如"撤销上次提交")
  • 当前状态(是否已推送、是否有未提交变更)
  • 是否需要保留变更内容

示例 Prompt

"我刚提交了一个 commit 但还没 push,发现漏了一个文件,如何把这个文件补充到上一次提交中?"

避坑指南

问题原因解决方案
push 被拒绝远程有新提交git pull --rebase
提交了敏感文件.gitignore 未配置使用 git rm --cached 移除
commit 信息写错手误git commit --amend 修改
误删文件操作失误git checkout -- filename 恢复