Github Desktop只同步了一个文件,而不是所有更改的文件

Github Desktop只同步了一个文件,而不是所有更改的文件,git,github,Git,Github,我想我的问题很严重 简而言之:Github桌面非常奇怪,在一系列已更改的文件中只提交了一个文件。然后我进行了同步。所以,远程Github确认我只提交了一个文件 现在,出于这样或那样的原因,我的所有文件都反映了上次提交之前的版本 我真的很担心。我试图自己解决这个问题,使用了一系列的git reflog和git reset HEAD^(我知道这很愚蠢),但我没有看到任何结果。我似乎无法收回我在上一次承诺之前所做的一切。有人能帮我吗?HEAD^是您当前提交的第一位家长。因此,如果你使用它,你就可以追

我想我的问题很严重

简而言之:Github桌面非常奇怪,在一系列已更改的文件中只提交了一个文件。然后我进行了同步。所以,远程Github确认我只提交了一个文件

现在,出于这样或那样的原因,我的所有文件都反映了上次提交之前的版本


我真的很担心。我试图自己解决这个问题,使用了一系列的
git reflog
git reset HEAD^
(我知道这很愚蠢),但我没有看到任何结果。我似乎无法收回我在上一次承诺之前所做的一切。有人能帮我吗?

HEAD^
是您当前提交的第一位家长。因此,如果你使用它,你就可以追溯到历史的更远的地方。您可能希望使用在reflog中看到的语法,比如
HEAD@{n}
,这意味着第n个commit
HEAD
指向现在之前。或者您可以简单地使用“今天提交”的SHA。事实证明,Github桌面实际上隐藏了更改。我指的是它给了我所需要的修复。很显然,这以前也发生在其他一些人身上

问题是,我正试图撤销提交,并在提交之前完成所有工作。如果我追溯到历史上,在我上一次犯错误之前的提交确实是很久以前的事了(我的错误是没有做更多的定期提交)。嗯,那么我想我误解了你的问题。你能不能换一种说法让它更清楚?您要撤消什么?手术的预期结果是什么。。。?我刚刚编辑了插图。基本上,我想得到的工作,我已经完成,因为我上次'好'承诺一个月前。从今天开始,每次我撤销错误的提交,它都会恢复到我的最后一次提交,也就是说,我想回到我的工作目录。如果你做了
git reset HEAD ~
(当你在错误提交时),那么你的工作树就不会被触动,你有效地撤销了错误的提交,并向索引中添加了内容。一个
--soft'重置只会取消提交,而索引和工作树保持不变;一个
--hard'重置也会将工作树重置为上一个提交。如果您确实丢弃了工作树中未提交的更改,例如。G通过
重设--hard
,无法将它们恢复。Git对工作树中的文件/更改一无所知,只要您不将它们添加到索引中。