Git分支管理:恢复已回滚提交并创建新分支提交PR
解决步骤
1. 确认本地branch-1的有效性
先切换到branch-1,检查提交历史是否包含你之前的36个文件变更:
git checkout branch-1 git log --oneline
如果日志里能看到你合并到master的原始提交,说明分支状态正常;如果看不到,从远程仓库拉取原始的branch-1(假设远程分支未被删除):
git fetch origin git checkout -b branch-1 origin/branch-1
2. 基于branch-1创建branch-2
确保当前处于branch-1分支,执行命令创建新分支:
git checkout -b branch-2
此时branch-2会完全继承branch-1的所有变更内容。
3. 修正拼写错误
找到存在拼写错误的文件,修改后提交变更:
git add <出错的文件名> git commit -m "fix: 修正拼写错误"
4. 同步master分支最新内容
因为master已经回滚了branch-1的合并,需要将master的最新状态合并到branch-2:
git checkout master git pull origin master git checkout branch-2 git merge master
若出现合并冲突,手动解决冲突后提交即可。
5. 推送分支并创建PR
将branch-2推送到远程仓库:
git push origin branch-2
前往GitHub仓库页面,找到branch-2分支,点击「Compare & pull request」按钮创建PR。
操作失效的可能原因
你之前执行git checkout -b branch-2后基于master创建分支,大概率是未正确切换到branch-1就执行了创建命令,或者本地branch-1已被误操作同步为master的状态。通过第一步的日志检查可以快速确认分支状态,必要时从远程重新拉取原始分支即可解决。
内容的提问来源于stack exchange,提问作者James B
相关产品推荐
相关产品推荐

