图解 git 仓库概念
git 的工作区、暂存区、本地仓库、远程仓库,形象的图解如下:
上图来源:菜鸟教程——Git基本操作
workspace:工作区,平时存放代码的位置
staging area:暂存区/缓存区,用于临时存放你的改动,事实上它只是一个文件,保存即将提交到文件列表信息
local repository:本地仓库,就是安全存放数据的位置,这里面有你提交到所有版本的数据。其中HEAD指向最新放入仓库的版本
remote repository:远程仓库,托管代码的服务器
代码从修改到提交到远程仓库,一般需要经历如下5个状态:未修改,已修改,已暂存,已提交,已推送。如下所示:
未修改原始内容
已修改 ↓ 工 作 区
已暂存 ↓ git add暂 存 区
已提交 ↓ git commit本地仓库
已推送 ↓ git push远程仓库
涉及的相关命令如下:
- git commit:是将本地修改过的文件提交到本地库中
- git push:是将本地库中的最新信息发送给远程库
- git fetch:是从远程获取最新版本到本地,不会自动merge
- git merge:是用于从指定的commit(s)合并到当前分支,用来合并两个分支
- git pull:是从远程获取最新版本到本地,并自动merge,它相当于 git fetch + git merge
- git checkout . :(冒号前的"."是通配符)或 git checkout -- <file>,会用暂存区全部或指定的文件替换工作区的文件。这个操作很危险,会清除工作区中未添加到暂存区的改动
- git checkout HEAD . :或者 git checkout HEAD <file> 命令时,会用 HEAD 指向的 master 分支中的全部或者部分文件替换暂存区和以及工作区中的文件。这个命令也是极具危险性的,因为不但会清除工作区中未提交的改动,也会清除暂存区中未提交的改动
- git rm --cached <file>:会直接从暂存区删除文件,工作区则不做出改变
- git reset HEAD:暂存区的目录树会被重写,被 master 分支指向的目录树所替换,但是工作区不受影响(详见:git reset 的3种用法)
参考:
- Git 工作区、暂存区和版本库
- 菜鸟教程,git 工作区概念
- 【Git】(1)—工作区、暂存区、版本库、远程仓库
- 一个小时学会 git
图解 git 仓库概念相关推荐
- (二)深入浅出图解Git,入门到精通(保姆级教程)
上一篇原创写了图解Git的第一篇,个人感觉还是可以,比较基础的那种,有兴趣的可以看一看[],这一篇我们继续图解Git,上一篇基本就是基础,这一篇算是进阶. 分支管理 Git中比较最重要的一点就是分支的 ...
- (一)深入浅出图解Git,入门到精通(保姆级教程)
Git简介 在我们的认知范围Git和SVN都是对于代码托管的工具,那么这两者又有什么不同呢? Git是世界上先进的「分布式的版本控制系统」,而SVN是「集中式的版本控制系统」,SVN对于版本的管理集中 ...
- git仓库相关知识01-安装和基本命令
一 .git工作流程 Git是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目,Git 与常用的版本控制工具 CVS, Subversion 等不同,它采用了分布式版本库的方式,不必 ...
- 使用AI在原神里自动钓鱼,扫描Git仓库泄露的密码 【Github热榜周刊第三期】
大家好,这里是的Github精彩项目分享周刊,我是每周都在搬砖的蛮三刀酱. 我会从Github热门趋势榜里选出 高质量.有趣,牛B 的开源项目进行分享. 榜单取自实时Github Trending排行 ...
- linux centos7安装git服务器配置,CentOS7 Linux环境下搭建Git仓库
1.安装依赖库 yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel perl-devel 2.安装Git ...
- 图解 Git 工作原理
来源:深度学习爱好者本文约2600字,建议阅读5分钟本文图解Git中的最常用命令.如果你稍微理解Git的工作原理,这篇文章能够让你理解的更透彻. 基本用法 上面的四条命令在工作目录.暂存目录(也叫做索 ...
- 图解 Git 工作原理,看完你就懂了!
本文图解Git中的最常用命令.如果你稍微理解Git的工作原理,这篇文章能够让你理解的更透彻. 基本用法 上面的四条命令在工作目录.暂存目录(也叫做索引)和仓库之间复制文件. git add files ...
- 微软开源Scalar,提升操作巨型Git仓库的速度
Git 属于分布式版本控制系统,默认情况下,每个 Git 仓库都具有整个历史记录的完整文件副本.即便是中等规模的开发团队也会产生数千个提交,每个月向仓库添加几百兆的数据. 而随着仓库的占用空间增加,G ...
- 收藏 | 图解 Git 工作原理
点上方计算机视觉联盟获取更多干货 仅作学术分享,不代表本公众号立场,侵权联系删除 转载于:深度学习这件小事 http://marklodato.github.io/visual-git-guide/i ...
最新文章
- A - 排名 HDU - 1236 sort(cmp)
- 大脑使用交叉存储,来区分现在和过去
- uniapp 界面拖动,去掉半圆形阴影
- jquery getJSON 中对超时Timeout的处理
- centos7.4php测试,CentOS7.4 通过yum安装php7.0
- linux清理缓存_自动清理linux系统内存和Cache方法
- EditPlus Version 3 价格 代理商 销售价格 正版软件价格
- 基于Android的虚拟校园移动学习系统
- 中兴a2018拆机图片_中兴a2s拆机视频
- vue实用echart饼图legend显示百分比
- 设备管理之I/O系统
- 十进制与8421码、5421码、2421码、余3码之间的转换
- 石墨计算机,电脑CPU可不可以用石墨做?
- 将 C# .NET ( Core Framework ) WPF Winform 项目打包成单个 exe 可执行文件
- javaWeb用户注册之用户名、密码、邮箱验证例题
- Win11 中【使用我的登录信息在更新后自动完成设置】以 「登录前自启」
- 几种swf格式视频转换器简介
- Apache服务器的启动方法
- 一键搭建网站(网站源码)
- 自动驾驶:车辆转弯半径计算