我是git的新手,我处于一个棘手的境地:
我当前的远程存储库处于以下状态:
Commit1 -> Commit2 -> Commit3
当我与另一位开发人员合作时,我们都开始使用Commit1
。他正在与Commit2
和Commit3
一起工作。
然而,Commit2
和Commit3
中的代码更改是不可取的,与此同时,我有自己的代码更改版本,我开始使用Commit1
,我想将更改合并到Commit1
,同时还原Commit2
和Commit3
。
所以我开始将我的代码提交到本地存储库(使用git add --all
和git commit -m "my commit"
)。
此后,我似乎犯了一个错误......我做了git revert --no-commit [Commit1 id]..HEAD
,我的所有代码都恢复到Commit1
。
但是,我查看了git show
,我的代码仍然在本地存储库中的某处提交。
我可以知道如何在本地存储库中取回我提交的代码吗?然后,将其推回以与远程存储库中的Commit1
合并?
您已经基本上完成了HEAD重置并且在存储库中进行的所有更改都被还原了使用它来查看您在哪里推送它git reflog然后使用它还原更改
git reset'HEAD @ {1}'
如果这是你第一次重置
!!!!!在你这样做之前检查一个新的分支,因为我也是git的新手,还是一个遇到同样问题的新手!!!!!!!