首页 开发者工具 Git命令速查表

Git命令速查表

完整的Git命令参考,按功能分类,支持搜索和一键复制

🚀 初始化与配置 4
git init
在当前目录初始化一个新的Git仓库
git clone <url>
克隆远程仓库到本地
git clone https://github.com/user/repo.git
git config --global user.name "Your Name"
设置全局用户名
git config --global user.email "[email protected]"
设置全局邮箱
📦 暂存文件 5
git add <file>
暂存指定文件
git add .
暂存所有更改的文件
git add -A
暂存所有文件(包括删除)
git add -p
交互式暂存(逐块选择)
git rm --cached <file>
从暂存区移除文件(保留本地)
💾 提交更改 5
git commit -m "message"
提交暂存的文件并添加消息
git commit --amend
修改最后一次提交的消息或内容
git commit -am "message"
暂存并提交所有已跟踪文件的更改
git commit --allow-empty -m "message"
允许创建空白提交
git commit -S -m "message"
创建GPG签名提交
🌿 分支操作 8
git branch
列出所有本地分支
git branch -a
列出所有本地和远程分支
git checkout <branch>
切换到指定分支
git checkout -b <new-branch>
创建并切换到新分支
git switch <branch>
切换到指定分支(新版命令)
git switch -c <new-branch>
创建并切换到新分支(新版命令)
git branch -d <branch>
删除本地分支
git branch -D <branch>
强制删除本地分支
🔀 合并与变基 5
git merge <branch>
将指定分支合并到当前分支
git merge --abort
取消合并操作
git rebase <branch>
将当前分支变基到目标分支
git rebase --continue
解决冲突后继续变基
git rebase --abort
取消变基操作
☁️ 远程操作 6
git remote -v
查看远程仓库列表
git push origin <branch>
推送分支到远程仓库
git push -u origin <branch>
推送并设置上游分支
git pull
拉取并合并远程更改
git fetch
从远程获取最新数据(不合并)
git remote add origin <url>
添加远程仓库
↩️ 撤销与回退 6
git restore --staged <file>
取消暂存文件
git restore <file>
丢弃文件的本地更改
git reset --soft HEAD~1
软重置:保留更改在暂存区
git reset --mixed HEAD~1
混合重置:保留更改在工作区
git reset --hard HEAD~1
硬重置:丢弃所有更改(危险!)
git revert <commit>
创建新提交来撤销指定提交
🏷️ 标签管理 4
git tag
列出所有标签
git tag <tagname>
创建轻量标签
git tag -a <tagname> -m "message"
创建带注释的标签
git push origin <tagname>
推送标签到远程
📊 查看信息 7
git status
查看当前仓库状态
git log
查看提交历史
git log --oneline --graph
查看简洁的图形化提交历史
git diff
查看未暂存的更改
git diff --staged
查看已暂存的更改
git show <commit>
查看某个提交的详细信息
git shortlog
按贡献者查看提交摘要

🎯 常见场景指引

第一次提交代码

初始化仓库并提交第一次代码的完整流程

git init
git add .
git commit -m "Initial commit"

推送代码到GitHub

创建仓库后推送本地代码的步骤

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时的快速参考指南。Git是当今最主流的分布式版本控制系统,几乎所有软件开发项目都在使用。然而Git的命令体系庞大,从基础的add/commit/push到高级的rebase/cherry-pick/stash,不同使用频率的命令记忆难度差异很大。即使是经验丰富的开发者,也常常需要查阅一些不常用命令的具体参数。本速查表将Git命令按使用场景分类整理,涵盖仓库初始化、日常提交、分支管理、远程协作、历史查看和错误修复等核心操作,帮助开发者快速找到所需命令,提升工作效率。

如何使用Git速查表

  1. 按场景查找 — 速查表按"仓库创建"、"日常操作"、"分支管理"、"远程协作"等场景分类,直接定位到对应分类。
  2. 复制命令 — 找到所需命令后一键复制,粘贴到终端执行。
  3. 查看参数说明 — 每个命令都附有参数解释和使用示例,帮助理解命令的具体行为。

常见使用场景

场景一:日常提交工作流

查看当前状态、暂存修改、提交变更、推送到远程——这些每天重复数十次的操作,通过速查表确保参数使用正确。

场景二:分支合并冲突处理

遇到合并冲突时快速查找解决步骤:查看冲突文件、手动编辑、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   # 回退最近提交(危险!)

最佳实践与注意事项

常见问题

Q:git merge和git rebase有什么区别?

A:merge保留完整的分支历史和合并节点,rebase将提交重新排列到目标分支之上使历史线性。rebase历史更干净但会改写提交hash,公共分支不建议使用rebase。

Q:不小心git reset --hard了怎么恢复?

A:使用git reflog查看操作历史,找到reset之前的commit hash,然后git reset --hard到那个hash。reflog保留最近30天的操作记录。

Q:如何只提交某个文件而不是全部?

A:使用git add指定文件名而非.:git add src/app.js然后git commit。可以多次git add不同文件后再统一提交。

Q:stash是做什么的?

A:git stash临时保存未提交的修改(工作区+暂存区),让你可以切换分支处理其他事情。处理完后git stash pop恢复修改。适合"做到一半被打断"的场景。

Q:如何处理大型二进制文件?

A:不要用Git管理大型二进制文件(图片、视频等)。使用Git LFS(Large File Storage)扩展,将大文件存储在单独的服务器上,Git只保存指针引用。

🔥 同类热门工具

💳
信用卡号验证器
信用卡号验证器 - Luhn算法验证,识别Visa/Mast...
🛠️
Cron表达式生成器
在线Cron表达式生成器,可视化构建5段和6位Cron表达式...
🛠️
CSS边框生成器
在线CSS边框生成器,可视化设计边框样式、宽度、颜色、圆角,...
🔘
CSS 圆角生成器
CSS 圆角生成器 - 可视化拖拽四角圆角,支持预设形状,一...
🎨
CSS 压缩器
免费在线CSS压缩器,一键压缩CSS代码,移除空白、注释和优...
🛠️
CSS阴影生成器
CSS Shadow Generator - Create ...
🎯
CSS 校验器
免费的在线CSS校验器,支持语法检查、属性值验证、常见错误提...
🌐
CURL命令生成器
在线CURL命令生成器,可视化设置请求方法、Headers、...
📅
日期计算器
日期计算器,计算两个日期间的天数差、周数差、月数差,以及推算...
📅
日期差计算器
日期差计算器,计算两个日期之间的天数、周数、月数,支持工作日...