2014-09-21 47 views
32

我可能沒有術語。我將文件添加到git上的開放項目中。我分出了這個項目。我做了一些更改,最後一次提交的是我想要向該項目請求的文件,而不是我之前做的小改動。當我去github網站並提出pull請求時,我會在所需的一個文件的最後一個之前得到所有提交,而我不想提交所有其他提交,因爲我認爲它不是必需的該項目。只是我自己的改變。我該怎麼辦?如果可能的話,我是否應該單獨製作另一個資源文件或單獨附加文件並提交。Git - 櫻桃選擇一個單一的提交請求

+0

只是單挑,這不能像SLak所描述的那樣工作。儘管我已經選擇了最後一次合併提交,但PR仍然希望彙總最後31次我提交給原始提交者的最後31次提交。我現在嘗試了十幾種方法來挑選一個提交來創建PR,但都沒有成功。 100%失敗。我試過重置分支到最後一次提交,創建一個功能分支,只是最後一次提交,創建一個差異/補丁和PR'ing,沒有運氣。在每一個案例中,它都希望創建PR最後31次提交到 – user3565738 2017-06-08 01:40:47

回答

59

您需要從遠程HEAD創建一個新分支,櫻桃選擇該分支的提交,將分支推送到您的GitHub上的回購,然後創建一個拉請求。

git checkout -b mybranch 
git fetch upstream 
git reset --hard upstream/master 
git cherry-pick <commit-hash> 
git push origin mybranch:mybranch 
+0

完美謝謝!你如何建議將來做拉請求?我應該只保留一切本地,只提交給我的叉github res我想要拉的請求? – user3590149 2014-09-21 05:05:39

+0

@ user3590149:是的,併爲每個拉取請求創建一個單獨的分支。如果您願意,您可以將非請求更改推送到其他分支。 – SLaks 2014-09-21 05:26:18

+1

似乎是我在找什麼。我一點也不知道自己在做什麼,但是......貨真價實! :) – 2015-10-27 11:25:32