这是我的实验。
git init
echo hello > some.txt
git add some.txt
-- objects
-- f2 (blob "hello")
echo hola > some.txt
git add some.txt
-- objects
-- f2 (blob "hello")
-- 53 (blob "hola")
git commit -m "..."
-- objects
-- f2 (blob "hello")
-- 53 (blob "hola")
-- 5c (tree
"some.txt" -> 53)
-- 61 (commit "tree 5c")
正如我们所见,每个“git add”都创建了 blob 对象,而“git commit”提交了最后一个 blob 53。
但请注意,中间 blob“f2”仍在存储库中。这有什么原因吗?我怎样才能使用这个 blob?或者我怎样才能删除它?