簡體   English   中英

Git從Pull Request中刪除不需要的提交

[英]Git Remove unwanted commits from a Pull Request

我已經開始研究一個項目了,我做了一些不需要的提交,我把它推到了原始的主人。 現在,當我嘗試執行拉取請求時,Github想要提交所有先前的提交。

我的問題是,如何刪除不需要的提交並提交我想要提交的更改,以便我與master保持同步?

我假設您的起源是您自己的某個項目的分支,您也想要執行拉取請求嗎?

由於您將更改歷史記錄(通過重置頭部),您需要使用--force標志。 使用git log找到上次提交的哈希值。

現在跑

git reset SHA

這將改變你的頭,並保留自上次良好提交以來文件中的更改,您的索引也將被重置。

現在,您可以更改代碼並執行所需的提交。 但是你必須做git push --force因為你改變了存儲庫的歷史。 這意味着任何分叉您的存儲庫的人將無法再從您那里獲取更改。 但是您可以向上游執行拉取請求。

如果您正在使用git gui,請轉到git gui並可視化您的分支歷史記錄。 (在執行下一步之前,請備份要推送的本地更改)右鍵單擊分支要重置為主控的點,然后單擊“重置”。 重置后,在命令行中鍵入git push -f現在在分支中進行必要的更改,再次提交n push。 如果現在創建一個pull請求,它將在分支重置后只有新的提交。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

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