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 --暂存区存在的意义相关推荐

  1. 为什么要有Git暂存区

    在学习Git的时候,一直有个疑惑,为啥要暂存区,通过工作区直接提交到本地仓库不就OK了!那么暂存区存在的意义是什么呢?先问问自己,使用git时候是否都是所有的修改全部提交了,根本没有考虑到多个修改文件 ...

  2. 【原创】关于Git暂存区的理解

    关于Git暂存区的理解      暂存区可以说是Git的三大重要的区域之一,另外两个分别是工作目录和Git仓库,所以说对暂存区的深入理解可以帮助我们理解很多Git命令背后隐藏的工作原理.今天,本文将以 ...

  3. 对Git暂存区的理解

    在使用git的项目中,有个隐藏目录.git,这个是git的版本库. git的版本库中存了很多东西,其中就包括git暂存区也即称为stage(或index)的暂存区. 使用git后,git会自动为我们创 ...

  4. Git暂存区的意义或git add的意义

    原回答来自Stack Overflow. 文章中主要提到了5点(结合下面的图!!!只是自己浅浅的理解). 1.staging helps you split up one large change i ...

  5. Git暂存区有什么用

    Git有三大区域 1.工作区(working directory) 2.暂缓区(stage index) 3.历史记录区(history) 为什么要有暂存区,通过工作区直接提交到本地仓库不就OK了!那 ...

  6. git学习(四):理解git暂存区(stage)

    与一般的版本管理不同的是,git在提交之前要将更改通过git add 添加到暂存区才能提交(git commit).即使是已经交给了git来管理的文件也是如此.这里继续学习git的暂存区. 通过git ...

  7. git stage 暂存_Git暂存区之理解Git暂存区(stage)

    标签: 前一篇blog在实践过程有意无意地透漏了"暂存区"的概念.为了避免用户被新概念吓坏,在暂存区出现的地方又同时使用了"提交任务"这一更易理解的概念,但是暂 ...

  8. 什么是git 暂存区

    工作区有一个隐藏目录.git,这个不算工作区(工作区就是你能看到的目录),而是Git的版本库. Git的版本库里存了很多东西,其中最重要的就是称为stage(或者叫index)的暂存区,还有Git为我 ...

  9. 3、git 暂存区撤销与删除

    目录 1.理解工作区与暂存区的区别 2.Git撤销修改和删除文件操作 2.1.撤销修改 2.2.删除文件 1.理解工作区与暂存区的区别 暂存区:git add后的区域: 当前分支: git commi ...

最新文章

  1. hdu 4468 spy 极其精彩的一道kmp灵活运用题
  2. 学习Struts 2.0系列文章
  3. android 检测过程,Android 系统对permision的检测过程
  4. 安装django步骤
  5. Excel 单元格 自定义格式详解
  6. 可能是最好用的单文件制作工具jexchan下载 | 含jexchan单文件制作工具使用详细教程
  7. java 创建Reader_BufferedReader类的对象建立问题(JAVA语言)
  8. 微信小程序 day4
  9. NTFS Change Journal(USN Journal)详解
  10. threeJS导入FBX模型
  11. C语言试题111之 s=a+aa+aaa+aaaa+aa...a 的值,其中 a 是一个数字。例如 2+22+222+2222+22222(此时 共有 5 个数相加),几个数相加有键盘控制。
  12. c语言程序设计在哪讲,《C语言程序设计》讲.doc
  13. 基于jsp的网络在线考试系统
  14. 曲线曲面积分总结归纳
  15. k8s1.23 使用cert-manager自动签发阿里云DNS域名证书
  16. 火狐浏览器如何设置默认打开网页
  17. 计算机科学分为哪些领域,计算机科学技术主要包含哪些领域
  18. SRS4.0源码分析-RTMP入口
  19. Java-Day11 面向对象遍程的入门 (类属性的默认值、构造方法、类的成员、static关键字、类的成员加载顺序、Java(权限)访问修饰符)
  20. 基于亲属图谱的关系推理

热门文章

  1. 字节跳动全链路压测(Rhino)的实践
  2. Vue.js学习笔记(3)循环语句
  3. 【TensorFlowKeras】基于卷积神经网络CNN的猫狗分类
  4. 低学历者生存困难 程序员尤其明显
  5. 苹果手机开不了机怎么办
  6. 大学平均绩点计算器_【采访合集】大一必知“绩点”与“奥方面试”
  7. 区块如何防篡改_区块链数据不可篡改的详细解释
  8. 白胡子不杀黑胡子的真正原因
  9. 计算机无法与internet同步时间,win7系统能上网可是无法同步Internet时间的解决方法...
  10. 【渝粤教育】电大中专中医基础知识 作业 题库