有人可以在git中解释快照的概念。我确实知道哪些数据可以存储为一系列变更集,但是这与git中的snaphot有何不同。为什么这样更好?
基本的Git工作流程如下:(取自git文档)
答案 0 :(得分:0)
git commit objects本质上是您正在谈论的快照。
git中的每个提交都代表整个树的快照(或状态),就像那个时刻一样。另一个提交会生成另一个快照,依此类推。
你总是可以通过签出提交来回滚整个树的状态:git checkout commit_id
- 它几乎就像时间机器。
当您git add
文件没有真正创建快照时,您只需将这些文件放入索引即可成为下一次提交的一部分,这样当您实际提交时,提交对象将只是引用那些文件。 git add
- ed(实际上,这些文件是在树木的帮助下组织的blob)。
答案 1 :(得分:0)
我认为文档非常糟糕。
您熟悉工作树,它只是您看到的文件,暂存区域或索引就像草稿,最后提交是快照。