如何在GitHub中同步到先前的变更列表?

如何在GitHub中同步到先前的变更列表?,git,github,perforce,sync,revision,Git,Github,Perforce,Sync,Revision,我来自Perforce世界,所以我在这里的语言是Perforce speak,但我正在尝试使用GitHUB,发生了一些可怕的事情。我使用了以下命令: git reset --hard (and) git clean -f -x -d (and then) git fetch 试图还原我刚刚编写的一些代码 我所遇到的不是恢复代码,而是从服务器和本地计算机上删除了所有修改过的文件。 不幸的是,我的大部分代码都在一个源文件中,由于我修改了该文件,它已经从服务器和本地计算机上消失了 有人能给我GitH

我来自Perforce世界,所以我在这里的语言是Perforce speak,但我正在尝试使用GitHUB,发生了一些可怕的事情。我使用了以下命令:

git reset --hard
(and)
git clean -f -x -d
(and then)
git fetch
试图还原我刚刚编写的一些代码

我所遇到的不是恢复代码,而是从服务器和本地计算机上删除了所有修改过的文件。
不幸的是,我的大部分代码都在一个源文件中,由于我修改了该文件,它已经从服务器和本地计算机上消失了

有人能给我GitHub命令来同步到旧版本的代码吗?恐怕这是我找回源代码的唯一方法

有人知道我做错了什么吗

谢谢
-Simon

使用您列出的命令,服务器上不应该发生任何事情。即使您推送了不想要的更改(例如,删除了文件的更改),所有历史记录都应该保留在服务器上

您是否再次尝试过简单地克隆存储库?这可能是确保本地git克隆处于正常状态的最简单方法。之后,查看日志中的文件


如果它仍然不在那里,那么您所做的肯定比您在原始问题中指出的要多。

使用您列出的命令,服务器上不应该发生任何事情。即使您推送了不想要的更改(例如,删除了文件的更改),所有历史记录都应该保留在服务器上

您是否再次尝试过简单地克隆存储库?这可能是确保本地git克隆处于正常状态的最简单方法。之后,查看日志中的文件


如果它仍然不存在,那么您一定做了比您在原始问题中指出的更多的事情。

git fetch
不应该在GitHub上发布/修改任何内容,但即使发布/修改了,您仍然可以向GitHub请求远程GitHub repo的reflog():丢失的提交应该在那里,准备恢复。还要检查本地端的reflog:
git fetch
不应该在GitHub上发布/修改任何内容,但即使发布/修改了,您仍然可以向GitHub请求远程GitHub repo的reflog():丢失的提交应该在那里,准备恢复。同时检查本地端的reflog: