0

长话短说,一位同事的电脑在他上次推送后崩溃并丢失了他的工作。作为最后的手段,我开始考虑在提交从本地推送到源之前,origin 对提交的了解程度。如果源在某个临时位置跟踪此提交,是否有办法将这些提交拉回代码中?

4

2 回答 2

1

origin在提交之前不知道提交。这几乎可以归结为分布式源代码控制系统的“分布式”部分。这些“本地”变化可以随时随地发生;当计算机离线时 - 该push步骤通知遥控器有关新更改的过程

于 2012-07-12T01:40:26.667 回答
1

不。git 中的远程仅通过两种*机制“跟踪”来自不同存储库的提交:fetch,其中它们显式请求引用,以及push,其中从另一个存储库向它们提供引用。

如果整个本地驱动器已损坏,并且您无法再挽救.git存储库中的大部分目录,那么可悲的是,您只能使用正常的驱动器恢复方式——除此之外,git 无能为力。对不起 :(

如果您确实拥有存储库并且它刚刚进入不良状态,那么该git reflog命令可以帮助您,或者如果您提供更多细节,您可以对对象数据库进行更深入的研究。

*当然还有其他机制可以做到这一点,但他们利用这些东西和引擎盖下的等效管道。

于 2012-07-12T01:44:29.323 回答