git branch搞砸了

Sha*_*ang 1 git branch

我的git存储库发生了一个严重的问题.我之前有2个分支,我昨晚写了代码,忘了推送到github.今天早上我使用了另一台机器并尝试分叉一个新分支并将它们向上推(代码存储在dropbox中,因此我使用的是哪台机器并不重要),然后git给了我错误说:"权限被拒绝".然后我意识到我没有使用我的labtop,所以我打开了我的labtop并试图进入我刚创建的分支.但是,似乎我不能那样做,更糟糕的是,我在另一台机器上提交的所有代码都消失了!我git branch用来查看分支列表,现在它就像:

centeredForm (shang's conflicted copy 2011-08-08)
* centeredform
  master
  refinement
Run Code Online (Sandbox Code Playgroud)

第一个"centeredForm"是我在另一台机器上创建的分支,"centeredform"是我之后在labtop上创建的分支.我的代码消失了吗?或者有没有办法恢复到以前的状态?

jwe*_*ich 6

如果它被提交,那么它就不会丢失.总有历史:

git reflog
Run Code Online (Sandbox Code Playgroud)

然后你可以获取上一次提交的SHA,并撤消任何混乱:

git reset --hard <SHA>
Run Code Online (Sandbox Code Playgroud)

重要信息:首先备份Everyhing.该reset --hard会删除所有非COMMITED变化.