git 使用场景 提 PR 再 Revert PR后,源分支rebase目标分支后代码丢了

发布时间:2024年01月05日

场景:员工A提PR ? 员工B合入PR到release ? 员工C revert PR ? 员工A 在提PR的 fix-bug分支 rebase origin/release ? rebase后修改内容没了,如何再重提这个PR呢?

因为git认为变化过程是原来内容→追加内容→删除内容,此时rebase时,删除动作视为最新提交,所以会把本地修改给清除,如何再重提这个PR呢?

1. git reflog	                         1. 找到员工A提PR 的那个提交542a43
2. git fetch	                         2. 拉取最新代码
3. git reset --hard origin/release       3. 本地使用远程release分支代码
4. git cherry-pick 542a43	             4. 把542a43内容 cherry-pick过来
5. git branch -vv	                     5. 为了查看 本地分支对应的远程分支 的名字fix-bug
6. git push origin HEAD:fix-bug -f	     6. 把本地分支 强推到 远程的fix-bug上

Further Reading :Git常用命令汇总

文章来源:https://blog.csdn.net/weixin_37646636/article/details/135406456
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。