Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/24.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/github/3.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
将较旧的提交推送到github后转到当前状态_Git_Github - Fatal编程技术网

将较旧的提交推送到github后转到当前状态

将较旧的提交推送到github后转到当前状态,git,github,Git,Github,如果标题不清楚,很抱歉。我不知道该写什么。 我想问的是,我正在做一个项目,几天前我做了一个承诺,但没有推动它。从那以后,我对代码做了很多修改,甚至还添加了很多文件。昨天,我决定将代码推入github。在这样做的时候,我首先将之前创建的提交推送到github中。但现在我的回购协议已经重置为之前的承诺。自从那次提交之后,我所做的所有更改和创建的新文件都消失了。 我想知道是否所有的更改和文件都永久消失了?如果没有,如何取回它?尝试使用git reflog。这应该会给你一个类似于下面的列表 更重要的是

如果标题不清楚,很抱歉。我不知道该写什么。 我想问的是,我正在做一个项目,几天前我做了一个承诺,但没有推动它。从那以后,我对代码做了很多修改,甚至还添加了很多文件。昨天,我决定将代码推入github。在这样做的时候,我首先将之前创建的提交推送到github中。但现在我的回购协议已经重置为之前的承诺。自从那次提交之后,我所做的所有更改和创建的新文件都消失了。
我想知道是否所有的更改和文件都永久消失了?如果没有,如何取回它?

尝试使用
git reflog
。这应该会给你一个类似于下面的列表

更重要的是,它会跟踪您所执行的触发
头部
指针变化的操作

如果要重置回以前的某个状态,请在执行
拉取操作之前说。。。或者在你做了一个糟糕的
git重置之前——很难…

您可以在此列表中找到触发工作目录更改的操作,然后在此操作之前使用以下命令将其重置为
HEAD

git reset --hard HEAD@{4}
标题{4}


以上只是一个示例,您必须将其替换为您想要返回的任何头部

尝试使用
git reflog
。这应该会给你一个类似于下面的列表

更重要的是,它会跟踪您所执行的触发
头部
指针变化的操作

如果要重置回以前的某个状态,请在执行
拉取操作之前说。。。或者在你做了一个糟糕的
git重置之前——很难…

您可以在此列表中找到触发工作目录更改的操作,然后在此操作之前使用以下命令将其重置为
HEAD

git reset --hard HEAD@{4}
标题{4}


以上仅是一个示例,您必须将其替换为您想要返回的任何头部。

git checkout
是否将您的更改带回?这是将副本重置为给定分支头的正常方法。另外,
git push
会沿当前分支隐式推送所有不在远程repo中的提交,因此通常不需要推送单个较旧的提交。不,git checkout不会带回我的更改。这就是问题所在,我没有做出新的承诺。我刚刚推了旧的。你也提交了其他更改吗?git status的输出是什么。你用树枝吗?git branch-vv的输出是什么?当您将de推送到github时,我猜它要求您更新本地存储库。您是否执行了git pull
?如果您使用的是GUI,请检查它是否已自动隐藏所有更改。在这种情况下,您只需弹出stashDoes
git checkout
即可将更改带回?这是将副本重置为给定分支头的正常方法。另外,
git push
会沿当前分支隐式推送所有不在远程repo中的提交,因此通常不需要推送单个较旧的提交。不,git checkout不会带回我的更改。这就是问题所在,我没有做出新的承诺。我刚刚推了旧的。你也提交了其他更改吗?git status的输出是什么。你用树枝吗?git branch-vv的输出是什么?当您将de推送到github时,我猜它要求您更新本地存储库。您是否执行了git pull
?如果您使用的是GUI,请检查它是否已自动隐藏所有更改。在这种情况下,你只需要打开那个储藏室