完整的Git命令参考,按功能分类,支持搜索和一键复制
git initgit clone <url>git config --global user.name "Your Name"git config --global user.email "[email protected]"git add <file>git add .git add -Agit add -pgit rm --cached <file>git commit -m "message"git commit --amendgit commit -am "message"git commit --allow-empty -m "message"git commit -S -m "message"git branchgit branch -agit checkout <branch>git checkout -b <new-branch>git switch <branch>git switch -c <new-branch>git branch -d <branch>git branch -D <branch>git merge <branch>git merge --abortgit rebase <branch>git rebase --continuegit rebase --abortgit remote -vgit push origin <branch>git push -u origin <branch>git pullgit fetchgit remote add origin <url>git restore --staged <file>git restore <file>git reset --soft HEAD~1git reset --mixed HEAD~1git reset --hard HEAD~1git revert <commit>git taggit tag <tagname>git tag -a <tagname> -m "message"git push origin <tagname>git statusgit loggit log --oneline --graphgit diffgit diff --stagedgit show <commit>git shortlog初始化仓库并提交第一次代码的完整流程
git init
git add .
git commit -m "Initial commit"
创建仓库后推送本地代码的步骤
git remote add origin <url>
git push -u origin main
基于主分支创建新功能分支
git checkout -b feature/new-feature
git push -u origin feature/new-feature
合并时遇到冲突的处理方法
git merge feature/xxx
# 编辑冲突文件
git add .
git commit -m "Resolve conflicts"
撤销最后一次提交的更改
git reset --soft HEAD~1 # 保留更改
git reset --hard HEAD~1 # 丢弃更改
从远程拉取最新代码并合并
git fetch origin
git pull origin main
Git速查表是开发者日常使用版本控制工具Git时的快速参考指南。Git是当今最主流的分布式版本控制系统,几乎所有软件开发项目都在使用。然而Git的命令体系庞大,从基础的add/commit/push到高级的rebase/cherry-pick/stash,不同使用频率的命令记忆难度差异很大。即使是经验丰富的开发者,也常常需要查阅一些不常用命令的具体参数。本速查表将Git命令按使用场景分类整理,涵盖仓库初始化、日常提交、分支管理、远程协作、历史查看和错误修复等核心操作,帮助开发者快速找到所需命令,提升工作效率。
查看当前状态、暂存修改、提交变更、推送到远程——这些每天重复数十次的操作,通过速查表确保参数使用正确。
遇到合并冲突时快速查找解决步骤:查看冲突文件、手动编辑、git add、git commit完成合并。
生产环境出bug需要紧急回滚时,快速找到git revert或git reset的正确用法,避免操作失误导致更多问题。
Git的核心是三个区域和工作树的关系:
# Git 工作区域模型
# 工作目录 → git add → 暂存区(Index) → git commit → 本地仓库 → git push → 远程仓库
# 核心命令速查
git init # 初始化仓库
git clone <url> # 克隆远程仓库
git status # 查看状态
git add . # 暂存所有修改
git commit -m "msg" # 提交到本地仓库
git push origin main # 推送到远程
# 分支操作
git branch feature # 创建分支
git checkout feature # 切换分支
git merge feature # 合并分支
git rebase main # 变基到main
# 查看历史
git log --oneline --graph # 图形化日志
git diff HEAD~1 # 查看最近一次提交的差异
# 撤销操作
git checkout -- file # 丢弃工作区修改
git reset HEAD file # 取消暂存
git revert <commit> # 创建反向提交
git reset --hard HEAD~1 # 回退最近提交(危险!)
A:merge保留完整的分支历史和合并节点,rebase将提交重新排列到目标分支之上使历史线性。rebase历史更干净但会改写提交hash,公共分支不建议使用rebase。
A:使用git reflog查看操作历史,找到reset之前的commit hash,然后git reset --hard到那个hash。reflog保留最近30天的操作记录。
A:使用git add指定文件名而非.:git add src/app.js然后git commit。可以多次git add不同文件后再统一提交。
A:git stash临时保存未提交的修改(工作区+暂存区),让你可以切换分支处理其他事情。处理完后git stash pop恢复修改。适合"做到一半被打断"的场景。
A:不要用Git管理大型二进制文件(图片、视频等)。使用Git LFS(Large File Storage)扩展,将大文件存储在单独的服务器上,Git只保存指针引用。