这次我搞砸了。
基本上,我在离线时对一个全新的项目做了一些工作。现在我回到了网上,我想把它放在git中。运行git init
告诉我,我已经在该位置有一个现有的仓库(虽然我不记得这样做了),但是没有提交更改(我现在意识到这些文件可能只是未跟踪)。
我最终做的是在GitHub上创建一个新的私人仓库,然后将其克隆到我的本地仓库。我天真地认为这会让我能够add
,commit
和push
我的本地更改为远程。
然而,它只是用空遥控器替换了我的本地仓库,因此删除了我的所有本地文件。
幸运的是,我在编辑器中打开了一些文件,因此我可以简单地保存更改,但是我必须将丢失的内容拼凑起来。
现在,这是一个长镜头,但有没有办法解决这个混乱?
答案 0 :(得分:0)
我想知道您(通过哪个工具或命令)如何在现有本地目录上克隆新存储库。由于该本地目录是一个已初始化的Git存储库,要么以某种方式删除并重新创建它,然后它可能无法恢复任何内容,要么实际上只添加了一个新的远程并使用新分支更新了工作目录,删除了一些提交,强制历史改写或类似的事情。在后一种情况下,您可以使用git fsck --lost-found
检索丢失的提交,然后选择使用git reflog
,git show
,git cherry-pick
...