我将尽力简洁地描述我的当前情况,并非常感谢您的建议。
今早我合并了一个大型代码功能分支,结果发现有一个关键错误。为了撤消它,我的同事在GitHub上回滚了合并(其中有几个提交),然后拉取后,一切似乎都很好。
在对特性分支进行一些微调后,我想确保它可以再次使用,因此我在我的特性分支上使用“git merge master”(像我一直做的那样)以确保一切都是最新的。
令人惊讶的是,这导致删除了我需要合并回主存储库的所有新代码!
这是由于分支上发生的回滚吗?通过查看git日志,我可以看到所有提交仍然存在。更奇怪的是,GitHub上的拉取请求在差异中未显示任何原始提交,只显示自回滚以来我所做的更改。
有人能帮我理解吗?
我知道有些人建议简单地撤消回滚,但我需要干净地回去,因为我所做的更改涉及大部分代码的结构。
今早我合并了一个大型代码功能分支,结果发现有一个关键错误。为了撤消它,我的同事在GitHub上回滚了合并(其中有几个提交),然后拉取后,一切似乎都很好。
在对特性分支进行一些微调后,我想确保它可以再次使用,因此我在我的特性分支上使用“git merge master”(像我一直做的那样)以确保一切都是最新的。
令人惊讶的是,这导致删除了我需要合并回主存储库的所有新代码!
这是由于分支上发生的回滚吗?通过查看git日志,我可以看到所有提交仍然存在。更奇怪的是,GitHub上的拉取请求在差异中未显示任何原始提交,只显示自回滚以来我所做的更改。
有人能帮我理解吗?
我知道有些人建议简单地撤消回滚,但我需要干净地回去,因为我所做的更改涉及大部分代码的结构。
git reflog
。它会显示您的存储库(不是分支而是整个存储库)的完整历史记录。检出所需的时间点,然后从那里继续。 - CodeWizard