git --暂存区存在的意义
1.分段提交
分段提交,可能不想把整个工作空间的修改内容提交,加入暂存区就可以分段提交。
其实要解释这个问题的话,需要回到GIT的前辈上来—>SVN,集中式源代码管理工具的集大成者。我们知道SVN相较于第一代源代码管理工具如VSS、CVS有几个显著的区别,其中最重要的特性之一就是原子性提交,每一个提交都是由多个文件的修改组成,而且这个提交是原子性的,要么这些修改全部成功,要么全部失败
。原子性提交带来的好处是显而易见的,这使得我们把项目整体还原到某个阶段或者时间点变得极为简便,就这一点SVN就完虐VSS等源代码管理工具。Git作为目前逼格最高的源代码管理工具,SVN这个优良的特性显然是要借鉴的。但是Linus马上发现了一个麻烦事儿,在命令行下面选择要提交的修改,是挺麻烦的一个事情。
显然这点小问题完全难不倒Linus这么一位旷世奇才。我们只需要在commit前面,发明一个暂存区
的概念就好了,这个暂存区是可以随意的将各种文件的修改放进去的,这样我们就可以用多个指令精确的挑选出我们需要提交的所有修改,然后再一次性的(原子性的)提交到版本库,问题就完美的解决了。
git中暂存区的出现就是为了替代svn中的上图所示的窗口。
2. 提高开发的灵活性
使得开发的时候更灵活,不需要像svn那样需要保证提交的代码完成度
,用暂存区代替提交来保存阶段性的代码
,让人的确心里压力小不少。
可以联系现实当中仓库中的暂存区
现实中的仓库
是用来存放成品的区域,在仓库的产品不会随意的改变,移动,只有在必要的情况下才会做操作
而现实中的暂存区
是一块随时都有各种情况的区域,因为是暂存嘛,放在这个区域内的产品既有可能是成品等待入库保存,也有可能存放半成品,需要下一个部门取走在进一步加工
[参考博客]
https://www.baidu.com/link?url=Zay9oyHlCED7pd3gF-32ZYAiFHeyfhsp9s-O8lXf5B_XOOSNaqozZrwlwPhK-Xc1cNX3rIYGMoRgcQW0wcnOwhevReiLifFJ9NMO5DK_STi&wd=&eqid=d68b982e000f94d0000000065f5e2b02
https://www.pianshen.com/article/1196848392/
git --暂存区存在的意义相关推荐
- 为什么要有Git暂存区
在学习Git的时候,一直有个疑惑,为啥要暂存区,通过工作区直接提交到本地仓库不就OK了!那么暂存区存在的意义是什么呢?先问问自己,使用git时候是否都是所有的修改全部提交了,根本没有考虑到多个修改文件 ...
- 【原创】关于Git暂存区的理解
关于Git暂存区的理解 暂存区可以说是Git的三大重要的区域之一,另外两个分别是工作目录和Git仓库,所以说对暂存区的深入理解可以帮助我们理解很多Git命令背后隐藏的工作原理.今天,本文将以 ...
- 对Git暂存区的理解
在使用git的项目中,有个隐藏目录.git,这个是git的版本库. git的版本库中存了很多东西,其中就包括git暂存区也即称为stage(或index)的暂存区. 使用git后,git会自动为我们创 ...
- Git暂存区的意义或git add的意义
原回答来自Stack Overflow. 文章中主要提到了5点(结合下面的图!!!只是自己浅浅的理解). 1.staging helps you split up one large change i ...
- Git暂存区有什么用
Git有三大区域 1.工作区(working directory) 2.暂缓区(stage index) 3.历史记录区(history) 为什么要有暂存区,通过工作区直接提交到本地仓库不就OK了!那 ...
- git学习(四):理解git暂存区(stage)
与一般的版本管理不同的是,git在提交之前要将更改通过git add 添加到暂存区才能提交(git commit).即使是已经交给了git来管理的文件也是如此.这里继续学习git的暂存区. 通过git ...
- git stage 暂存_Git暂存区之理解Git暂存区(stage)
标签: 前一篇blog在实践过程有意无意地透漏了"暂存区"的概念.为了避免用户被新概念吓坏,在暂存区出现的地方又同时使用了"提交任务"这一更易理解的概念,但是暂 ...
- 什么是git 暂存区
工作区有一个隐藏目录.git,这个不算工作区(工作区就是你能看到的目录),而是Git的版本库. Git的版本库里存了很多东西,其中最重要的就是称为stage(或者叫index)的暂存区,还有Git为我 ...
- 3、git 暂存区撤销与删除
目录 1.理解工作区与暂存区的区别 2.Git撤销修改和删除文件操作 2.1.撤销修改 2.2.删除文件 1.理解工作区与暂存区的区别 暂存区:git add后的区域: 当前分支: git commi ...
最新文章
- hdu 4468 spy 极其精彩的一道kmp灵活运用题
- 学习Struts 2.0系列文章
- android 检测过程,Android 系统对permision的检测过程
- 安装django步骤
- Excel 单元格 自定义格式详解
- 可能是最好用的单文件制作工具jexchan下载 | 含jexchan单文件制作工具使用详细教程
- java 创建Reader_BufferedReader类的对象建立问题(JAVA语言)
- 微信小程序 day4
- NTFS Change Journal(USN Journal)详解
- threeJS导入FBX模型
- C语言试题111之 s=a+aa+aaa+aaaa+aa...a 的值,其中 a 是一个数字。例如 2+22+222+2222+22222(此时 共有 5 个数相加),几个数相加有键盘控制。
- c语言程序设计在哪讲,《C语言程序设计》讲.doc
- 基于jsp的网络在线考试系统
- 曲线曲面积分总结归纳
- k8s1.23 使用cert-manager自动签发阿里云DNS域名证书
- 火狐浏览器如何设置默认打开网页
- 计算机科学分为哪些领域,计算机科学技术主要包含哪些领域
- SRS4.0源码分析-RTMP入口
- Java-Day11 面向对象遍程的入门 (类属性的默认值、构造方法、类的成员、static关键字、类的成员加载顺序、Java(权限)访问修饰符)
- 基于亲属图谱的关系推理
热门文章
- 字节跳动全链路压测(Rhino)的实践
- Vue.js学习笔记(3)循环语句
- 【TensorFlowKeras】基于卷积神经网络CNN的猫狗分类
- 低学历者生存困难 程序员尤其明显
- 苹果手机开不了机怎么办
- 大学平均绩点计算器_【采访合集】大一必知“绩点”与“奥方面试”
- 区块如何防篡改_区块链数据不可篡改的详细解释
- 白胡子不杀黑胡子的真正原因
- 计算机无法与internet同步时间,win7系统能上网可是无法同步Internet时间的解决方法...
- 【渝粤教育】电大中专中医基础知识 作业 题库