可能会通过git丢失一些更改

时间:2012-01-05 17:19:56

标签: git

前几天我试图将一些更改推送到远程服务器。

我一直收到错误,所以我想看看我在哪个分店。

我看到我本地不是一个未定义的分支,这真的很怪异所以我检查了主人然后能够推动。

刚检查出合并,我的更改都没有。他们不在当地。超过10个小时的工作,我无法在任何地方找到它。

我做了一个gitk,我没有看到任何改变。我确实看到了这样的大师合并:

Author: Sara Chipps <sarajchipps@Sara-Chippss-MacBook-Pro.local>  2012-01-04 13:48:20
Committer: Sara Chipps <sarajchipps@Sara-Chippss-MacBook-Pro.local>  2012-01-04 13:48:20
Parent: 1a294db3a244d7aeaafbc99c986af86ce7cf17da (Merge branch 'master' of https://github.com/thing/thing)
Parent: 8ed995c7a5a370333ab27485be07f6a5f647e8d4 (added subscription button to edit profile section)
Child:  0dbf7e53737c0e7ee7ab908812299c1d60ef0c46 (removed coffee icon on getting started)
Branches: master, remotes/origin/master
Follows: 
Precedes: 

    Merge branch 'master' of https://github.com/thing/thing

我不是唯一一个承诺这个项目的人,我不知道我是如何在本地获得一个未定义的分支。有人可以建议修复吗?担心会失去很多工作。

谢谢你。

1 个答案:

答案 0 :(得分:17)

检查

git reflog

这将为您提供操作历史记录,如果您的更改已签入,则它们将在该日志中的某个位置进行修订。

您还可以查看以下输出:

git rev-list --all --header HEAD

这将显示存储库中的大部分内容。您可能需要使用-n来限制,并且输出有点令人困惑。有关其他信息,请查看git-rev-list的man页面。这有助于弄清楚你的位置。

您还可以在当前位置创建分支:

git branch my temporary

然后使用gitk

gitk --all

也有想法。