git-来自“提交”的提交定义;Git自下而上;小册子

git-来自“提交”的提交定义;Git自下而上;小册子,git,commit,definition,Git,Commit,Definition,我正在阅读,它对“提交”的定义如下: “提交是工作树在某个时间点的快照” 然而,我不同意这个定义。您的工作树中可能有5个文件(1个新文件,4个修改文件),但只有3个文件添加到索引中。因此,如果您提交,您的提交将不对应于当前工作树 有什么我遗漏了或我是对的吗?不,你没有遗漏什么。当然也有可能有不代表工作树在某个时间点实际处于的状态的提交。但它们的功能确实是逻辑上的树状态快照,即使它是磁盘上从未存在过的逻辑状态。您认为“工作树”的定义是什么?是一个不在“工作树”索引中的文件?@GreenAsJade

我正在阅读,它对“提交”的定义如下:

“提交是工作树在某个时间点的快照”

然而,我不同意这个定义。您的工作树中可能有5个文件(1个新文件,4个修改文件),但只有3个文件添加到索引中。因此,如果您提交,您的提交将不对应于当前工作树


有什么我遗漏了或我是对的吗?

不,你没有遗漏什么。当然也有可能有不代表工作树在某个时间点实际处于的状态的提交。但它们的功能确实是逻辑上的树状态快照,即使它是磁盘上从未存在过的逻辑状态。

您认为“工作树”的定义是什么?是一个不在“工作树”索引中的文件?@GreenAsJade,来自同一本书“工作树是文件系统中任何与之关联的存储库的目录”。对我来说,那是一棵正在生长的树。是的,一个不在索引中的文件在我的工作树中。是的,但是“工作树”(您定义为目录)是否包括不在索引中的文件?通常,人们并不担心定义中的这种详细程度。。。说到底,谁在乎呢?您引用的声明旨在对正在发生的事情进行高层次的解释,而不是一个精确的定义。我认为这是需要理解的重要一点:这句话通常是在介绍部分给出的,以引导新来者,而不是作为一个精确实现细节的陈述。@Tiago我记得我也被GFTBU的那段话弄糊涂了。让我集思广益,我会发布一个答案。@Jubobs也期待着你的答案!