hum*_*zed 75 git github pull-request
我做了一个pull请求,但之后我在本地对项目进行了一些提交,最终污染了我的pull请求,我试图删除它,但没有任何运气.
我在StackOverflow上发现了一些类似的问题,但我无法应用那里的内容.这是我在GitHub上的第一个拉取请求,所以对我来说这一切都很有用.
突出显示的提交是我需要保留并删除所有其他内容的提交.它成为历史上的第四个提交,因为我做了一些合并的东西.
有人可以解释一下发生了什么以及如何解决这个问题?
Cod*_*ard 81
你有几种技术可以做到这一点.
这篇文章 - 阅读关于还原的部分将详细解释我们想要做什么以及如何做.
以下是解决您问题的最简单方法:
# Checkout the desired branch
git checkout <branch>
# Undo the desired commit
git revert <commit>
# Update the remote with the undo of the code
git push origin <branch>
Run Code Online (Sandbox Code Playgroud)
revert命令将使用原始提交的撤消创建新提交.
fer*_*rit 66
人们不希望看到错误的提交和恢复提交以撤消错误提交的更改.这会污染提交历史记录.
这是一种删除错误提交的简单方法,而不是使用还原提交撤消更改.
git checkout my-pull-request-branch
git rebase -i HEAD~n// n您希望包含在交互式rebase中的最后提交的数量.
pick用drop的承诺要放弃.git push --force小智 10
如果您要删除提交并且不想保留其更改,@ferit 有一个很好的解决方案。
如果您想将该提交添加到当前分支,但作为当前 pr 的一部分没有意义,您可以执行以下操作:
git rebase -i HEAD~ngit reset HEAD^ --soft取消提交更改并使它们恢复到暂存状态。git push --force在没有删除提交的情况下更新远程分支。现在您已经从远程删除了提交,但在本地仍然会有更改。
从您的分支中执行以下命令
git reset --soft origin/master
git commit -m "Detail of Your last commit that you want to see"
git push -f
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
77904 次 |
| 最近记录: |