我的推送操作失败了,因为我的同事向我正在处理的同一个分支提交了一行,而我忘记存储我的,所以我试图恢复我同事的提交并将其复制到我的更改中,这样只有传出的提交会已经存在了,我想。它没有按照我想要的方式工作,所以我尝试重置他的提交,然后我右键单击提交,然后单击重置->删除 --Hard(在 Visual Studio 中),这删除了他和我的所有提交。
我再次提交了我的更改,只是我未能将其推送到服务器。我找到了该git reflog
命令,但我不确定是否可以在不使用 Git 桌面客户端的情况下使用它。
有没有办法使用 SSH 客户端从服务器上找到我未推送的提交?还是我应该重写所有内容?大约有 50-100 行代码丢失了。
解决了:
使用左上角附近的 Visual Studio Git 菜单 -> 然后在命令提示符中打开
git reflog
然后
git cherry-pick <SHA-1>
其中 SHA-1 是分支的负责人(例如 HEAD@{1}),如下面的 user1686 答案中的链接所述。