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更新分支。

我建議您這樣做的方式如下:

  1. 關閉PR,以便任何人在進行更改之前都無法將其拉入。
  2. 在您不想要的更改之前對提交進行軟重置(如果這是最後一次提交,則可以使用 git reset --soft HEAD^ 或者如果它是不同的提交,則需要用提交ID替換“ HEAD ^”)
  3. 放棄(或撤消)您不打算更新的文件更改
  4. 進行新的提交 git commit -a -c ORIG_HEAD
  5. 強制推送到您的分支
  6. 重新打開拉取請求

現在您的分支已更新,“拉取請求”將包括您的更改。

Here's Gits文檔的鏈接,其中在 撤消提交和重做 下有一個很好的示例。





version-control