【Git】03.Git文件夹解析+四个区常用命令
一、.git 本地仓库Local Repo.git 本地仓库Local Repo​里面包含了版本历史、分支、HEAD、真正的数据库。二、四个区回顾① Workspace 工作区 ② Index 暂存区 ③ Local Repo 本地仓库 ④ Remote Repo 远程仓库➡️ 正向流动正常开发流程① 工作区 → ② 暂存区bash bashgit add file # 添加指定文件 git add . # 添加当前目录所有变更 git add -p # 交互式添加推荐很专业② 暂存区 → ③ 本地仓库bash bashgit commit -m msg # 提交暂存区内容 git commit -am msg # 自动 add 已跟踪文件并提交⚠不含新文件③ 本地仓库 → ④ 远程仓库bash bashgit push origin main # 推送到远程 main 分支 git push # 已跟踪上游分支时可简写 git push --set-upstream origin dev # 新建远程分支并关联⬅️ 反向流动回退 / 同步④ 远程仓库 → ③ 本地仓库bash bashgit fetch origin # 仅拉取不合并 git fetch --all # 拉取所有远程③ 本地仓库 → ② 暂存区撤销 commitbash bashgit reset --soft HEAD~1 # 回退 commit保留暂存区和工作区③ 本地仓库 → ① 工作区彻底回退bash bashgit reset --mixed HEAD~1 # 回退 commit 暂存区默认 git reset --hard HEAD~1 # 回退 commit 暂存区 工作区⚠危险② 暂存区 → ① 工作区撤销 addbash bashgit reset HEAD file # 取消暂存保留修改 git restore --staged file # Git 2.23 推荐写法③ 本地仓库 → ① 工作区用仓库覆盖工作区bash bashgit checkout HEAD -- file # 用 HEAD 版本覆盖工作区文件 git restore file # Git 2.23 推荐写法④ 远程仓库 → ① 工作区拉代码并合并bash bashgit pull # fetch merge git pull --rebase # fetch rebase嵌入式团队常用 特殊但常用的跨区操作工作区 ← 暂存区丢弃修改bash bashgit checkout -- file # 老写法 git restore file # 新写法暂存区 ← 本地仓库精确回退某个文件bash bashgit reset HEAD file工作区 ← 远程仓库强制同步bash bashgit fetch origin git reset --hard origin/main 一张“命令流向表”重点收藏流向命令备注①→②git add工作区 → 暂存区②→③git commit暂存区 → 本地仓库③→④git push本地仓库 → 远程④→③git fetch远程 → 本地仓库③→②git reset --soft回退 commit②→①git restore --staged撤销 add③→①git restore用仓库覆盖工作区④→①git pull拉取并合并⚠️ 一条红线非常重要凡是带--hard的命令bashbashgit reset --hard✅ 会同时清空暂存区工作区未提交修改 ❌不可恢复嵌入式开发里建议多用 git status少用 reset --hard用 git stash临时保存✅ 一句话速记add 进暂存commit 进仓库push 上云端reset 往回走restore 清现场。三、Git 四个区 全流向命令总表核心一、嵌入式工程师专用 Git Cheat Sheet✅ 日常开发流最常用bashgit statusgit add drivers/uart/git commit -m drivers: add uart v2 with dmagit pull --rebasegit push✅ 临时保存现场中断调试bashgit stash # 保存当前修改git stash listgit stash pop # 恢复并删除 stashgit stash apply # 恢复但不删除嵌入式里经常“板子跑飞了我要切分支查问题”✅ 查看差异非常高频bashgit diff # 工作区 vs 暂存区git diff --cached # 暂存区 vs 本地仓库git diff HEAD~1 # 最近一次提交差异git diff branchA branchB✅ 查看历史查是谁改炸了bashgit loggit log --onelinegit log -p drivers/uart/git blame drivers/uart/uart.c✅ 分支管理嵌入式必会bashgit branchgit branch feature/ethgit checkout feature/ethgit switch feature/eth # Git 2.23git merge feature/ethgit rebase main✅ 嵌入式常见坑坑正确做法把 .config提交用 defconfig提交 .o / .elf写 .gitignore提交 SDK 工具链只提交版本信息在 repo 里放固件 bin用 LFS 或独立仓库用 main 直接发版本打 tagv1.2.0二、一句话终极记忆法嵌入式版改代码在 Workspaceadd 进 Indexcommit 进 Repopush 上 Remotestash 救急rebase 保整洁tag 定版本diff 查真相。

相关新闻

安全测试|OpenVAS扫描神器

安全测试|OpenVAS扫描神器

OpenVas是一款开源的漏洞评估系统,是Nessus项目分支,它是一款应用级别的漏洞扫描器,用于检测并管理目标网络或主机漏洞,它的评估是基于其积累的数万个漏洞测试脚本,OpenVas最早有是一个客户端程序,目前官方…

2026/8/1 2:55:52
MATLAB版JPDA多目标跟踪工具包:含卡尔曼滤波、事件概率计算与可视化分析全套函数

MATLAB版JPDA多目标跟踪工具包:含卡尔曼滤波、事件概率计算与可视化分析全套函数

本文还有配套的精品资源,点击获取 简介:这个MATLAB资源包提供完整的联合概率数据关联(JPDA)多目标跟踪实现,覆盖从状态预测、观测更新、事件生成与验证,到事件概率计算、全局数据关联分配、杂波剔除与轨…

2026/8/1 7:07:39
真实世界疫苗有效性(VE)评估实战指南

真实世界疫苗有效性(VE)评估实战指南

1. 项目概述:这不是一次简单的数据统计,而是一场公共卫生决策的实证推演“Measure the Effectiveness of Covid-19 Vaccinations”——这个标题乍看像一句教科书里的课后习题,但在我过去三年参与的七轮真实疫苗效果评估项目中,它背…

2026/8/1 5:48:28

最新新闻

JetBrains Air IDE:面向AI原生开发的容器化IDE架构

JetBrains Air IDE:面向AI原生开发的容器化IDE架构

1. JetBrains Air IDE 是什么?不是“又一个AI IDE”,而是IDE架构的范式迁移JetBrains Air IDE 这个名字刚出来时,我第一反应是:又一个套着AI外壳的玩具产品?毕竟过去两年,“AI IDE”这个词已经被各种创业公…

2026/8/1 3:20:34
从PEP 517到wheel构建:深入解析bottleneck安装失败的根本原因与系统化修复

从PEP 517到wheel构建:深入解析bottleneck安装失败的根本原因与系统化修复

1. 当Python遇上C扩展:bottleneck安装失败背后的技术困局 那天下午,我正在为一个时间序列分析项目配置环境。当执行 pip install bottleneck 时,熟悉的红色错误提示突然跳出:"ERROR: Could not build wheels for bottlenec…

2026/8/1 9:14:56
Swindler事件系统详解:如何监听并响应窗口状态变化

Swindler事件系统详解:如何监听并响应窗口状态变化

Swindler事件系统详解:如何监听并响应窗口状态变化 【免费下载链接】Swindler macOS window management library for Swift 项目地址: https://gitcode.com/gh_mirrors/sw/Swindler Swindler是一款强大的macOS窗口管理Swift库,提供了全面的事件系…

2026/8/1 3:45:33
CANN/asc-devkit绝对值计算API

CANN/asc-devkit绝对值计算API

asc_abs 【免费下载链接】asc-devkit 本项目是CANN 推出的昇腾AI处理器专用的算子程序开发语言,原生支持C和C标准规范,主要由类库和语言扩展层构成,提供多层级API,满足多维场景算子开发诉求。 项目地址: https://gitcode.com/ca…

2026/7/31 0:24:13
CANN/ops-sparse稀疏算子开发指南

CANN/ops-sparse稀疏算子开发指南

{算子名称}算子 【免费下载链接】ops-sparse 本项目是CANN提供的高性能稀疏矩阵计算的算子库,专注于优化稀疏矩阵的计算效率。 项目地址: https://gitcode.com/cann/ops-sparse 算子概述 {一段话描述算子的功能定位和核心运算。例如:"{op} 算…

2026/8/1 3:28:31
MATLAB工具箱实战:从零安装CVX到解决首个凸优化问题

MATLAB工具箱实战:从零安装CVX到解决首个凸优化问题

1. CVX工具箱简介与安装准备CVX是一个专门用于解决凸优化问题的MATLAB工具箱,它能让用户用接近数学表达式的语法来描述和求解优化问题。我第一次接触CVX是在研究生阶段做信号处理项目时,当时需要解决一个复杂的投资组合优化问题,传统方法代码…

2026/8/1 11:15:28

日新闻

周新闻

月新闻