git 各个区的区别
- Workspace:工作区
- Index / Stage:暂存区
- Repository:仓库区(或本地仓库)
- Remote:远程仓库
1、打开你的项目文件夹,除了隐藏的.git文件夹,其他项目文件位于的地方便是工作区
2、在工作区新增一个文本文件,状态是Untracked(未跟踪)
3、git add 命令实际上就是把要提交的所有修改放到暂存区(Stage),Git便会在暂存区中生成一个该文件的索引,文件此时处于uncommited状态
4 、执行 git commit 就可以一次性把暂存区的所有修改提交到本地仓库分支。
5、git push 是将本地仓库提交到远程仓库。
git diff 比较文件
工作区与暂存区比较:git diff filepath
工作区与提交区比较:git diff 提交hash码或者HEAD
暂存区与提交区比较:git diff --staged 或 --cached filepath
两个不同提交区比较:git diff 提交区hash码A 提交区hash码B
两个不同分支间比较:git diff 分支A的某个hash码 分支B的某个hash码 #若比较两个分支最新提交之间的区别,则直接将hash码换成分支名称即可
工作区与commit 提交进行比较:git diff commitId filepath
仅仅删除暂存区里的文件
git rm --cache 文件名
删除暂存区和工作区的文件
git rm -f 文件名
删除错误提交的commit,也可称为版本回退
撤销已提交的版本库,不会修改暂存区和工作区
git reset --soft 版本库ID
撤销已提交的版本库和暂存区,不会修改工作区
git reset --mixed 版本库ID
彻底将工作区、暂存区和版本库记录恢复到指定的版本库
git reset --hard 版本库ID
相关文章:GIT工作区、暂存区、版本库之间的关系
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 25岁的心里话
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现