git - tutorial - version control software
從拉取請求中刪除修改後的文件 (2)
切換到創建拉取請求的分支:
$ git checkout pull-request-branch
用另一個分支中的文件覆蓋修改後的文件,讓我們將其視為 主文件 :
git checkout origin/master -- src/main/java/HelloWorld.java
提交並推送到遠程:
git commit -m "Removed a modified file from pull request"
git push origin pull-request-branch
我目前在請求請求中有3個修改過的文件(沒有新文件)。
我想從拉取請求中刪除其中一個文件,以便拉取請求僅包含對兩個文件的更改,並使第三個文件保持其原始的原始狀態。
我嘗試了幾件事(簽出文件的原始版本等),但在PR中它仍顯示為更改後的文件。
有針對這個的解決方法嗎?
您可能想要修改提交,然後執行強制推送,這將使用PR更新分支。
我建議您這樣做的方式如下:
- 關閉PR,以便任何人在進行更改之前都無法將其拉入。
-
在您不想要的更改之前對提交進行軟重置(如果這是最後一次提交,則可以使用
git reset --soft HEAD^
或者如果它是不同的提交,則需要用提交ID替換“ HEAD ^”) - 放棄(或撤消)您不打算更新的文件更改
-
進行新的提交
git commit -a -c ORIG_HEAD
- 強制推送到您的分支
- 重新打開拉取請求
現在您的分支已更新,“拉取請求”將包括您的更改。
Here's Gits文檔的鏈接,其中在 撤消提交和重做 下有一個很好的示例。