常用 Git 指令汇总

AndyCrow 2025-11-11

日常常用的 Git 指令清单,按实际使用场景分类,适合在提交代码、查看状态、回退误操作时快速查阅。

参考:Git 官方文档与命令手册
git-scm.com/docs GIT CHEAT SHEET

初始化与获取项目

指令 用途
git init 创建一个新的 Git 仓库,或重新初始化当前目录中的仓库。
git clone <仓库地址> 把远程仓库克隆到本地新目录。
git clone <仓库地址> <目录名> 克隆仓库并指定本地目录名。

首次配置

指令 用途
git config --global user.name "你的名字" 配置全局提交用户名。
git config --global user.email "你的邮箱" 配置全局提交邮箱。
git config --list 查看当前 Git 配置。

暂存与提交

指令 用途
git add <文件名> 只把指定文件加入暂存区,适合精确控制本次提交内容。
git add . 把当前目录及其子目录里的变更统一加入暂存区。
git add -A 把新增、修改、删除的全部变更一次性加入暂存区。
git add -u 只更新已跟踪文件的修改和删除,不添加新文件。
git add -p 按修改块交互式选择要暂存的内容。
git commit -m "提交说明" 生成一次提交,并用一句话写清本次修改的目的。
git commit -a -m "提交说明" 自动提交已跟踪文件的修改和删除,适合快速提交。
git commit --amend 修改最近一次提交,常用于补漏文件或修正文案。

查看当前状态

指令 用途
git status 查看当前有哪些文件被修改、暂存或未跟踪。
git diff 查看工作区相对暂存区的具体改动内容。
git diff --cached 查看已经暂存、但还没提交的改动内容。
git log --oneline 用精简格式查看提交历史,方便快速定位版本。
git show <提交号> 查看某一次提交具体改了什么。

分支切换与协作

指令 用途
git branch 查看本地分支列表,并标出当前所在分支。
git branch <分支名> 新建一个本地分支,但不自动切换过去。
git switch <分支名> 切换到已有分支,适合日常开发使用。
git switch -c <分支名> 新建并切换到新分支,一步完成。
git merge <分支名> 把指定分支的改动合并到当前分支。
git rebase <分支名> 让当前分支基于目标分支最新提交重新排列历史。

同步远程仓库

指令 用途
git remote -v 查看当前仓库绑定了哪些远程地址。
git pull 拉取远程最新代码并自动合并到当前分支。
git fetch 只获取远程最新提交,不立即合并到本地。
git push 把当前分支提交推送到远程仓库。
git push -u origin <分支名> 首次推送分支并建立本地与远程分支的跟踪关系。

撤销与恢复

指令 用途
git restore <文件名> 丢弃工作区中某个文件未暂存的修改。
git restore --staged <文件名> 把某个文件从暂存区撤回到工作区。
git reset --soft HEAD~1 撤回最近一次提交,但保留暂存区内容。
git reset --mixed HEAD~1 撤回最近一次提交,并把改动退回工作区。
git revert <提交号> 用一条新提交撤销旧提交,适合已经推送后的回退。

删除与重命名

指令 用途
git rm <文件名> 删除文件,并把这次删除加入暂存区。
git rm --cached <文件名> 只把文件从 Git 跟踪中移除,但保留本地文件。
git mv <旧文件名> <新文件名> 移动或重命名文件,并更新索引。

临时保存现场

指令 用途
git stash 临时保存当前未提交修改,方便先切分支处理别的任务。
git stash list 查看已经保存了哪些临时现场。
git stash pop 恢复最近一次保存的现场,并从列表中移除。
git stash apply 恢复某次保存的现场,但保留 stash 记录。

常用 Git 工作流程

日常提交代码

git status
git add .
git commit -m "本次修改说明"
git push

作用:先确认改动,再暂存、提交,最后推送到远程仓库。

第一次拉取项目开始开发

git clone <仓库地址>
cd <项目目录>
git switch -c feature/my-work
git add .
git commit -m "开始开发"
git push -u origin feature/my-work

作用:先克隆项目,再切出自己的分支开始开发,并在首次推送时建立跟踪关系。

只提交指定文件

git status
git add src/app.js
git add src/utils.js
git commit -m "修复首页交互问题"
git push

作用:只提交本次真正相关的文件,避免把无关修改一起推上去。

新分支首次提交并推送

git switch -c feature/login-page
git add .
git commit -m "新增登录页"
git push -u origin feature/login-page

作用:新建分支开发功能,并在首次推送时建立本地与远程分支的跟踪关系。

先拉最新代码再继续提交

git pull
git status
git add .
git commit -m "同步后继续完善功能"
git push

作用:先同步远程最新代码,减少提交后再处理冲突的概率。

已跟踪文件快速提交

git status
git commit -a -m "更新已跟踪文件"
git push

作用:适合只修改了已有文件、没有新增文件时快速提交。新增文件仍然需要先 git add

提交后发现漏了文件

git add .
git commit --amend
git push --force-with-lease

作用:补充最近一次提交内容。只适合你确认是在修改自己刚刚的提交历史时使用。

常见使用建议

  1. 小改动用 git add <文件名>,能避免把不相关内容一起提交。
  2. 提交前先跑一次 git status,通常能减少低级错误。
  3. 已经推送到远程后的回退,优先考虑 git revert,比强改历史更稳妥。