Git 命令速查手册

全面收录常用 Git 命令,分类清晰,便于快速查阅,提升你的版本控制效率

基础操作

初始化本地仓库

git init

在当前目录创建一个新的 Git 仓库

克隆远程仓库

git clone <远程仓库地址>

将远程仓库完整克隆到本地

配置用户信息

git config --global user.name "用户名"
git config --global user.email "邮箱"

设置全局的 Git 用户名和邮箱

查看配置信息

git config --list

显示所有 Git 配置信息

查看命令帮助

git help <命令>
git <命令> --help

获取指定 Git 命令的详细帮助信息

工作流操作

查看文件状态

git status
git status -s # 简化输出

显示工作区和暂存区的文件状态

添加文件到暂存区

git add <文件名>
git add . # 添加所有文件 git add -u # 添加已跟踪的文件

将文件改动添加到暂存区,准备提交

提交更改

git commit -m "提交说明"
git commit -am "提交说明" # 跳过暂存区

将暂存区的更改提交到本地仓库

查看提交历史

git log
git log --oneline # 简化显示
git log -n 5 # 显示最近5次提交

查看仓库的提交历史记录

查看文件差异

git diff # 工作区与暂存区
git diff --cached # 暂存区与本地仓库

比较文件在不同状态下的差异

撤销暂存区文件

git reset HEAD <文件名>
git reset HEAD . # 撤销所有

将文件从暂存区移除,保留工作区修改

丢弃工作区修改

git checkout -- <文件名>
git restore <文件名> # Git 2.23+

放弃工作区对文件的修改,恢复到最近版本

撤销最近提交

git commit --amend

修改最近一次提交,可添加遗漏文件或修改说明

分支管理

查看分支

git branch # 本地分支
git branch -r # 远程分支
git branch -a # 所有分支

列出本地、远程或所有分支信息

创建分支

git branch <分支名>
git checkout -b <分支名> # 创建并切换
git switch -c <分支名> # Git 2.23+

创建新分支,可直接切换到新分支

切换分支

git checkout <分支名>
git switch <分支名> # Git 2.23+

切换到指定的已有分支

合并分支

git merge <被合并分支名>
git merge --abort # 放弃合并

将指定分支合并到当前所在分支

删除分支

git branch -d <分支名> # 删除已合并分支
git branch -D <分支名> # 强制删除
git push origin --delete <分支名> # 删除远程

删除本地或远程分支,谨慎使用强制删除

重命名分支

git branch -m <旧分支名> <新分支名>

重命名本地分支

远程仓库

关联远程仓库

git remote add <别名> <远程地址>
# 示例: git remote add origin https://github.com/user/repo.git

将本地仓库与远程仓库关联,通常别名为 origin

查看远程信息

git remote
git remote -v # 显示地址
git remote show <别名> # 详细信息

查看已关联的远程仓库信息

拉取远程代码

git fetch <远程别名> <分支>
git pull <远程别名> <分支>
git pull # 简化写法

拉取远程仓库代码到本地,pull 会自动合并

推送代码到远程

git push <远程别名> <本地分支>
git push -u <远程别名> <本地分支> # 关联
git push --force # 强制推送(慎用)

将本地分支推送到远程仓库,首次推送建议关联

移除远程关联

git remote remove <远程别名>

解除与指定远程仓库的关联

高级操作

版本回退

git reset --soft <提交哈希>
git reset --mixed <提交哈希>
git reset --hard <提交哈希> # 慎用

回退到指定版本,soft保留修改,hard彻底丢弃

查看所有操作记录

git reflog

显示本地仓库的所有引用变更,可找回误删提交

创建撤销提交

git revert <提交哈希>

创建新提交抵消指定提交的修改,保留历史记录

标签管理

git tag <标签名> # 创建标签
git tag -a <标签名> -m "说明"
git push origin <标签名> # 推送标签

为重要版本创建标签,如 v1.0.0

暂存工作区

git stash # 暂存修改
git stash pop # 恢复并删除
git stash list # 查看暂存

临时保存工作区修改,用于切换分支等场景

统计代码提交量

git shortlog -s -n # 按作者统计
git log --oneline | wc -l # 总提交数

统计代码提交数量和作者贡献

常用工作场景

新功能开发流程

git checkout main
git pull
git checkout -b feature/新功能名
# 进行开发工作
git add .
git commit -m "完成新功能开发"
git push -u origin feature/新功能名

修复Bug流程

git checkout main
git pull
git checkout -b bugfix/问题描述
# 修复Bug
git add .
git commit -m "修复XX问题"
git push -u origin bugfix/问题描述

版本发布流程

git checkout main
git pull
git tag -a v1.0.0 -m "版本说明"
git push origin v1.0.0
# 或推送所有标签
git push origin --tags

回滚错误提交

# 本地未推送的错误提交
git log --oneline
git reset --hard 目标提交哈希

# 已推送的错误提交
git log --oneline
git revert 错误提交哈希
git push