Git

Git暂存区的意义

我理解的stage

Posted by mengxun on December 7, 2018

思考

git add的命令会把当前工作区里的文件提到暂存区,那么暂存区有什么意义,为什么非要存在呢?

个人理解

试想一个场景:如果现在你修改了十个文件,本次提交你需要提交里面的六个。

如果没暂存区而直接进行提交的话,那么提交完你可能发现漏了一个文件,那这个时候你就得再产生一次新的提交,把这个漏掉的文件补上,导致一次提交变两次。

而且,漏了文件算是很好的情况了,你还有可能提交了多余的一个文件,这个时候你就得找git的日志,然后撤回操作,再重新提交。想一想,六个文件,很有可能又得重新打一遍这些文件的文件名,很麻烦对吧。而这些麻烦仅仅是因为不小心多余了一个文件,其他文件都得跟着受牵连。

可是如果有暂存区的话,那你就能在正式提交前检查一遍,就能避免掉这些麻烦。

  • 发现有漏的文件没提交?那就直接add,不会产生新提交。

  • 发现有多余文件误提交?那就直接reset这个多余的文件就好,其他文件不会受到影响!

因为有了暂存区的存在,你可以在正式提交前再确认一遍这次提交的所有内容。如果发现有问题能及时做出调整,避免以后更大的麻烦。