[英]How to create a pull request from reverted Git commit?
我有一个主分支,我错误地将提交推送到该分支。 我应该将其推送到功能分支。 所以,我已经从主分支恢复了那个提交,并推送了一个恢复:
git revert <commit-hash>
git push
然后我创建了一个新的功能分支,我想使用我错误推送到主分支的提交。 我已经选择了对该分支的提交:
git cherry-pick <commit-hash>
当我做git status
时,我得到:
没什么可提交的,工作树干净
由于我想从该分支发出拉取请求,因此没有提交就无法完成。 如何使恢复的提交显示为功能分支上的新提交?
摘樱桃后,工作树是干净的,所以 git 状态是正确的。 您刚刚挑选的樱桃就是您想要的提交。 所以不要担心,要快乐。 推你可爱的新分支!
您可以git revert
已还原的提交。 恢复创建一个新的提交,取消恢复的提交,如果你恢复一个恢复提交,它会恢复更改。
Cherry pick 的行为可能出乎意料,因为历史仍然包含您正在挑选的提交。 它看到提交已经在您的分支的历史记录中。
编辑:从头开始。 如果您只是担心git status
是干净的,那么马特的回答是正确的。 Cherry pick 已成功并将更改提交到您的分支(它有效地为您完成了git commit
- 带来了更改、消息和其他提交元数据)。
如果您查看git log
,您应该会看到精心挑选的提交。 要检查旧提交中的更改,您可以执行git checkout SHA_HASH some_file.txt
,然后将其显示为工作副本中未跟踪的更改。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.