Github: 意外推送 git 没有提交

Github: accidentally push git without commit

我刚开始使用 Github 并犯了一个愚蠢的错误。 我正在研究一个名为 'entry' 的 branch,并试图将 commitpush 当前作品转换为新的 branch 'entry2'。但是,一旦我用 'entry2' 制作了:

git branch entry2
git checkout entry2

并且在没有添加或提交的情况下意外地推送了它。

git push origin entry2

现在我有几天前committed的数据,我保存在repo的所有作品都不见了。我搜索了恢复方法,但我不敢尝试,因为我还没有完成任何添加和提交步骤。我该怎么做才能恢复我的文件?顺便说一下,我正在使用 Android Studio 制作一个应用程序。 Android Studio 是否有可能保留我的应用程序的先前版本?

如果您已经在一个分支上完成提交并刚刚签出到另一个分支,您可以使用以下命令签出到您的第一个分支 git checkout entry 并使用 git push -u origin entry

推送提交

1) 您可以按如下方式在 Android Studio 中找到任何文件的 local history -

右键单击 Android Studio 中的文件 Project View -> Select 本地历史记录 -> Select 显示历史。这将显示最近对该文件所做的所有更改以及时间。

2) 根据您使用 git 完成的步骤,您的本地更改应该出现在 entry2 branch 中。

当您 checkoutentry1 branchentry2 branch 时,您的本地(未提交的)更改移至 entry2

当您将 branch entry2 推送到 origin 时,您的本地数据仍保留在那里,因为提交总是被推送到源。在您的情况下,由于这是新的 branch,因此 entry2 branch 被推送到 origin 而没有任何提交。您的本地数据不会被推送,也不会丢失。它仍然存在于 entry2 branch。您可以通过 -

来检查
git status

3) 如果您在结帐到 entry2 branch 之前已经 commited 您在 entry1 branch 的数据,则您的数据必须存在于 entry1 branch。您可以 checkout 到 entry1 取回您的数据。

注意:我假设你完全按照你所说的去做了。如果是,则上述内容应该有效。但是,您始终可以从 Android Studio.

取回 local changes