我正在学习如何使用git,我想知道在git fetch命令因电源故障或连接问题而中断之前获取的文件会变成什么样。在中断之前获取的文件是否会被复制到我的计算机上?
答案 0 :(得分:3)
git fetch
将从远程存储库传输对象。为了保持Git的完整性,只有完整的对象才会被写入本地存储库。因此,如果获取被中断,您将最终得到部分对象,这意味着获取未完成,但没有单个对象会被破坏。在随后的获取中,Git将再次计算缺少哪些对象并获取它们。
答案 1 :(得分:1)
当git fetch开始接收对象时,它会在其中创建一个临时文件
用于保存新对象的存储库的objects/pack
目录。只有一次
fetch完成将临时文件重命名为将要的名称
被其他git进程所尊重。如果提取被暂时中断
文件将被忽略,包括另一个fetch;所以一切都是
在中断之前转移将再次转移。
及时(默认为2周),临时包文件将符合资格
通过垃圾收集过程删除。你可以强迫这样做
离开git gc --prune=now
。