Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/python-2.7/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
“在”期间中止是否安全;git fetch";?_Git - Fatal编程技术网

“在”期间中止是否安全;git fetch";?

“在”期间中止是否安全;git fetch";?,git,Git,我刚刚开始获取一个大型远程git回购。不幸的是,我后来才意识到,由于连接不好,需要几个小时才能完成。发出ctrl-C(或以其他方式终止git进程)并稍后在更好的连接上重试是否安全?或者,我的本地回购协议有可能陷入腐败状态,或者其他什么问题吗?应该是安全的 git fetch将首先简单地传输新对象。下载所有内容后,它会将远程引用设置为新的头提交。如果您在下载步骤中中止它,它在所有引用中都没有任何更改。因此,一切都应该是好的。有任何引用或支持证据吗?这正是git的工作方式:一个引用只能指向一个提交,

我刚刚开始
获取一个大型远程git回购。不幸的是,我后来才意识到,由于连接不好,需要几个小时才能完成。发出ctrl-C(或以其他方式终止git进程)并稍后在更好的连接上重试是否安全?或者,我的本地回购协议有可能陷入腐败状态,或者其他什么问题吗?

应该是安全的


git fetch
将首先简单地传输新对象。下载所有内容后,它会将远程引用设置为新的头提交。如果您在下载步骤中中止它,它在所有引用中都没有任何更改。因此,一切都应该是好的。

有任何引用或支持证据吗?这正是git的工作方式:一个引用只能指向一个提交,而每个提交都取决于它的父级。因此,您必须先下载所有这些提交,然后才能更改引用。@michas:这也是我猜测/希望的,但如果在手册或类似手册中有一个指针可以确认这一点,那就太好了。(顺便说一句,我不是落选者。)你只有两个选择。要么像我上面指出的那样理解概念,要么阅读实际内容。我理解概念,但抽象往往是漏洞百出的,高层次的大纲可以让流程听起来比实际更稳健。所以“理解概念”不是一个人可以依赖的。不过,感谢您提供了源代码的链接-如果这一点有更易于访问的参考资料(例如手册或git手册),那就太好了,但取而代之的是,源代码是一些东西。git的一个设计目标是,Torvalds希望能够信任他的版本控制系统。因此,所有内容都强调加密哈希,没有VCS扩展的变量,等等。我无法想象有这种想法的人会让像断开互联网连接这样简单的东西损坏存储库。