当前位置: 首页 > news >正文

Git命令大全:一表掌握所有核心操作

以下是整理的常用 Git 命令大全,按功能分类并以表格形式呈现,涵盖基础操作、分支管理、远程协作、版本回溯、进阶操作等核心场景,方便查阅和使用:

命令分类命令功能说明
基础配置git config --global user.name "你的用户名"配置全局用户名(提交代码时的身份标识)
git config --global user.email "你的邮箱"配置全局邮箱(提交代码时的身份标识)
git config --list查看当前 Git 配置信息
git config --global --unset user.name取消全局用户名配置
仓库初始化git init在当前目录初始化一个空的 Git 仓库
git clone <仓库地址>克隆远程仓库到本地(支持 HTTPS/SSH 地址)
git clone <仓库地址> <自定义目录名>克隆远程仓库到本地并指定目录名
文件状态管理git status查看工作区、暂存区文件状态(未跟踪 / 已修改 / 已暂存)
git add <文件名>将指定文件从工作区添加到暂存区
git add .将工作区所有修改 / 新增文件添加到暂存区(不包含删除)
git add -A将工作区所有修改(新增 / 修改 / 删除)添加到暂存区
git add -u仅添加已跟踪文件的修改 / 删除到暂存区(不包含新增文件)
git rm <文件名>删除工作区文件并将删除操作加入暂存区
git rm --cached <文件名>将文件从暂存区移除(保留工作区文件,取消跟踪)
git mv <旧文件名> <新文件名>重命名文件并将操作加入暂存区
提交版本git commit -m "提交说明"将暂存区文件提交到本地仓库,附带简短提交信息
git commit -am "提交说明"跳过暂存区,直接将已跟踪文件的修改提交到本地仓库
git commit --amend修改最后一次提交(可补充文件 / 修改提交信息)
git commit --amend -m "新提交说明"直接修改最后一次提交的说明
版本回溯 / 查看git log查看提交历史(按时间倒序,显示提交 ID、作者、时间、说明)
git log --oneline精简显示提交历史(每行一个提交,仅显示提交 ID 前 7 位和说明)
git log --graph以图形化方式显示分支合并历史
git log --author="用户名"查看指定作者的提交历史
git log -n <数字>仅显示最近 n 次提交
git reflog查看所有分支的操作记录(包括已删除的提交,用于恢复误操作)
git checkout <提交ID> <文件名>恢复指定文件到某次提交的状态
git checkout <提交ID>切换到某次提交的版本(进入分离头指针状态,仅查看,不修改)
git reset --hard <提交ID>回退到指定提交版本,清空工作区和暂存区修改(谨慎使用)
git reset --mixed <提交ID>回退到指定提交版本,保留工作区修改,清空暂存区(默认模式)
git reset --soft <提交ID>回退到指定提交版本,保留工作区和暂存区修改
分支管理git branch查看本地所有分支(当前分支前标 *)
git branch -r查看远程所有分支
git branch -a查看本地 + 远程所有分支
git branch <分支名>创建新分支(基于当前提交)
git checkout <分支名>切换到指定分支
git checkout -b <分支名>创建并切换到新分支(常用)
git branch -d <分支名>删除本地已合并的分支
git branch -D <分支名>强制删除本地分支(无论是否合并)
git push origin --delete <分支名>删除远程分支
git branch -m <旧分支名> <新分支名>重命名本地分支
git merge <分支名>将指定分支合并到当前分支(如 feature 合并到 main)
git rebase <分支名>变基:将当前分支的提交基于指定分支重放(使提交历史更线性)
git rebase --abort终止变基操作(出现冲突时)
git rebase --continue解决冲突后继续变基操作
远程仓库协作git remote查看已关联的远程仓库名称(默认 origin)
git remote -v查看远程仓库名称及对应的地址(fetch/push)
git remote add <远程名> <仓库地址>关联远程仓库
git remote remove <远程名>移除已关联的远程仓库
git remote rename <旧远程名> <新远程名>重命名远程仓库
git fetch <远程名>拉取远程仓库的最新版本(不合并到本地)
git pull <远程名> <分支名>拉取远程指定分支并合并到本地当前分支(= git fetch + git merge)
git push <远程名> <本地分支名>将本地分支推送到远程仓库
git push <远程名> <本地分支名>:<远程分支名>推送本地分支到远程并指定远程分支名
git push -u <远程名> <分支名>推送分支并建立本地与远程分支的追踪关系(首次推送常用)
git push --force <远程名> <分支名>强制推送(覆盖远程分支,谨慎使用)
标签管理git tag查看所有标签
git tag <标签名>创建轻量标签(基于当前提交)
git tag -a <标签名> -m "标签说明"创建附注标签(含详细信息,推荐)
git tag -d <标签名>删除本地标签
git push <远程名> <标签名>推送指定标签到远程仓库
git push <远程名> --tags推送所有本地标签到远程仓库
git push <远程名> --delete <标签名>删除远程标签
git checkout <标签名>切换到指定标签的版本(分离头指针状态)
暂存操作git stash将工作区未提交的修改暂存(临时保存,可切换分支)
git stash save "备注信息"暂存时添加备注信息
git stash list查看所有暂存记录
git stash apply <暂存名>应用指定暂存记录(保留暂存)
git stash pop应用最新暂存记录并删除该暂存(常用)
git stash drop <暂存名>删除指定暂存记录
git stash clear清空所有暂存记录
冲突解决git diff查看工作区与暂存区的文件差异
git diff <分支1> <分支2>查看两个分支之间的文件差异
git diff --cached查看暂存区与本地仓库的文件差异
git mergetool调用可视化工具解决合并冲突(需提前配置)
其他常用git clean -n预览要删除的未跟踪文件(干跑,不实际删除)
git clean -f删除工作区未跟踪的文件(谨慎使用)
git clean -fd删除未跟踪的文件和目录
git gc清理 Git 仓库的冗余对象,优化仓库性能
git blame <文件名>查看文件每行代码的提交作者、时间、提交 ID(追溯代码修改记录)

补充说明:

  1. 尖括号<>中的内容为需替换的自定义内容(如仓库地址、分支名),实际使用时需去掉尖括号;
  2. 远程仓库默认名称为origin,日常使用中可省略(如git pull等价于git pull origin);
  3. 变基(rebase)和合并(merge)均用于整合分支代码,变基使提交历史更线性,但不要对已推送到远程的公共分支执行变基;
  4. 执行git reset --hardgit clean -f等命令前建议确认代码已备份,避免数据丢失;
  5. 冲突解决时,文件中会出现<<<<<<< HEAD(当前分支内容)、=======(合并分支内容)、>>>>>>> 分支名标记,需手动编辑后提交。
  6. https://www.runoob.com/git/git-tutorial.html (菜鸟git教程)
http://www.jsqmd.com/news/165527/

相关文章:

  • python基于Vue的汽车4s店销售一体化服务管理系统的设计与实现_6fc7t_django Flask pycharm项目
  • 锚定2026:易方达 A500ETF(159361)卡位领先,资金与规模双双站稳头部 - 速递信息
  • python基于Vue的家装一体化装修商城平台_guptn_django Flask pycharm项目
  • :has 伪类选择器(“父选择器” 或 “反向选择器” )
  • python基于Vue的快递业务配送取件管理系统_gbu3f_django Flask pycharm项目
  • python基于Vue的汽配汽车配件销售采购管理系统_23cu0_django Flask pycharm项目
  • (网警vs顶级黑客)网络攻防的核心底层逻辑
  • python基于Vue的教务选课缴费管理系统_ux52l_django Flask pycharm项目
  • 富文本编辑器粘贴Word公式转图片的组件
  • python基于Vue的洛川县苹果销售水果农产品商城管理平台_3tzoe_django Flask pycharm项目
  • 【博客之星】2025年度创作成长总结 - 高层次综合设计,和我一道,要识庐山真面目
  • 网页编辑器Word图片自动转Base64上传组件
  • Rime-AI v2版本发布
  • python基于Vue的民宿客房预约管理系统的设计与实现_16605_django Flask pycharm项目
  • 角度头轴承重点厂家推荐 角度头/侧铣头/直角铣头/万能铣头/动力刀座/高精度精密主轴轴承厂家选择指南 - 小张666
  • HTML富文本编辑器粘贴PPT图片自动上传组件
  • SpringBoot + MyBatis-Plus + Redis + RabbitMQ:电商秒杀场景下的库存预扣与订单异步创建​
  • 文件管理自动化:.bat 脚本使用指南
  • Go context详解:超时控制与请求链路追踪
  • IO模拟I2C
  • git中如何从某次历史提交节点上创建一个新的分支
  • 单相PWM整流器两种控制策略实现仿真分享
  • nRF54LV10A:面向可穿戴式生物传感器与互联健康应用的芯片解决方案
  • Check Point网关高危漏洞CVE-2024–24919技术分析与利用示例
  • 新能源汽车车载双向 OBC 的 MATLAB 仿真探索
  • 港科大NIPS 2025新成果:R3框架让RAG检索器实现环境中自我进化
  • python基于Vue的城市公园门票预订综合管理系统的设计与实现_aku8p_django Flask pycharm项目
  • 【企业管理】企业内部控制
  • 被锁死的想象力:当AI成了科研本身,人类只能是观众
  • 短视频多平台智能运营神器源码:AI剪辑+矩阵管理+百种工具赋能