簡體   English   中英

如何從還原的 Git 提交創建拉取請求?

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM