在GIT中撤消结帐

Sam*_*ody 2 git msysgit

使用MSYSGIT历史浏览器,我检出了一个特定的提交.这是一个错误 - 我试图查看文件,并认为我必须检查它们才能看到它们.

从那时起,我一直无法再向我的远程仓库推送提交(在GITHub上).我有点理解,虽然不完全.[我承认不完全了解结帐的工作方式,请温柔地对待一个菜鸟.]

如何撤消该结帐并将其恢复到以前的状态?

如果我右键单击"签出"提交,我会选择"删除此分支".是否会删除该提交的文件[bad]或者只是撤消签出?我吠叫错了树吗?

小智 7

我的理解是你不小心检查了一个早期的提交,然后在你想要保留的内容之上做了新的提交.首先,确保您有指向当前工作的指针:

git checkout -b newbranch
Run Code Online (Sandbox Code Playgroud)

然后,结帐你之前的位置:

git checkout master
Run Code Online (Sandbox Code Playgroud)

希望这会让你回到你的主线分支,你可以正常推送到GitHub.如果您想要提取所做的更改,则可以合并(一旦您满意)删除临时分支:

git merge newbranch
git branch -d newbranch
Run Code Online (Sandbox Code Playgroud)