我是 git 新手,我已经对本地 repo 做了几次提交。然后我错误地单击了“拉”而不是“推”。最后我开始清理我的桌面......我删除了整个目录(回购克隆)。从服务器克隆 repo 后,我没有任何提交。
你能告诉我是否可以恢复已删除的回购(更改)?我正在使用 Windows 7 + TortoiseGit。
提前致谢。
我是 git 新手,我已经对本地 repo 做了几次提交。然后我错误地单击了“拉”而不是“推”。最后我开始清理我的桌面......我删除了整个目录(回购克隆)。从服务器克隆 repo 后,我没有任何提交。
你能告诉我是否可以恢复已删除的回购(更改)?我正在使用 Windows 7 + TortoiseGit。
提前致谢。
你在备份你的本地机器吗?如果没有,你什么时候开始?
底线是:如果您在本地存储库中进行了未推送的更改,然后删除了该存储库,那么您的更改曾经在源代码控制系统中这一事实对您没有帮助。
回复评论:
我对您一直在使用 SVN (cvs-isch) 并不感到惊讶。了解提交和提交之间的区别至关重要。在 git 中,您只能在本地提交并使用推/拉机制来同步彼此不同的不同存储库。
git 中的提交可以看作是 SVN 中某种形式的缓存提交,您可以将更改排队等待稍后同步。实际同步被延迟。很多人在工作中仍然难以获得差异
原答案:
版本控制并不能治愈愚蠢;)您唯一能做的就是通过雇用可以重建已丢失数据的人来尝试从硬盘驱动器中恢复数据。
您提交到本地存储库,而不是服务器。如果您删除了该存储库,则无法从您未提交的存储库中取回提交。版本控制只能做这么多......
为了让您下次知道,您可能想要git reset --hard @{1}
将本地存储库恢复到意外拉取之前的状态。