2017-07-19 128 views
0

有一種拉取請求是通過更長時間的變化創建的,因此包含對項目多個部分的更改。代碼審查團隊希望這個拉取請求被放棄,並創建多個較小的拉取請求。來自單個拉取請求的多個拉取請求

經過初步研究,從拉取請求中選擇特定文件夾/目錄的更改並創建較小的拉取請求似乎不可行。

一些提交具有跨越夾變化,使採摘櫻桃是不可行的

有什麼建議?

+0

如何挑選一個小功能的相關提交併創建一個Pull請求? –

+0

我無法挑選提交,因爲有100多個提交,並且每個提交都跨文件夾進行更改。這個問題是爲特定代碼目錄中的更改創建PRO – DanglingPointer

+0

我將從每個需​​要PR的提交中分支(讀取爲歷史記錄中必須是PR的每個點),我會以我的觀點更有意義 –

回答

0

得到的所有承諾一個特定的文件夾

git log -- path/to/folder 

然後壓扁提交(squashing commits

+0

對不起,我沒有得到你。可以說,10個提交跨3個文件夾的變化,我如何創建3 PR這些變化? – DanglingPointer

+0

回退最近的10次提交。 1)從一個以前創建的本地倉庫中獲取一個文件夾並獲取該文件夾中的所有提交(使用櫻桃選擇),並將其壓縮到一個提交,然後按照相同的方式對其他文件夾進行提交,最後您將得到3提交。 – skr

0
  • 確保你沒有任何提交的工作

  • 結賬PR到臨時分支

    git checkout -b pr_splitting_branch top_of_the_PR

  • 現在,保持變化,移動到PR的底座(的git merge-base HEAD origin/master輸出)

    git的復位--mixed PR_base

不是你把所有的變化,未提交。您可以使用git add --interactive或GUI來選擇要放置到第一次提交的更改。重複它,直到你完成所有更改。然後使用git cherry-pickpr_splitting_branch分成單獨的分支。