2016-08-26 38 views
3

我有拉請求審查,我看到一些文件不需要,即.tmp等也有一個文件推送不應該被編輯。什麼拉請求者應該做回覆壞提交

哪位git操作拉請求者應該這樣做,來解決這個問題? 從我的角度來看,我看到一個提交的分支,不能從壞的提交中分離壞的提交。如果請求者也沒有本地提交呢?如果他有?

+5

請開發人員解決問題,並將更改推送到他/她的PR分支。 –

+0

@BryceDrew:我認爲這個問題比Git更重要,因爲它牽涉到請求者在沒有GitHub干預的情況下將修復提交給他們的PR。 – Makoto

+0

@Makoto Pull Request不是git的特色,對不對? –

回答

3

有多種方法可以做到這一點,正確的方法將取決於您的貢獻政策。

提取請求者(用戶提交PR)可以通過多種方式修復PR。請記住PR的重要部分是由PR中的所有提交創建的更改集合。如果在一次提交中添加一行並在另一次提交中刪除,則彙總更改根本不會顯示該行。

所以問題是,你希望這個PR如何顯示在你的更改歷史中?一些項目喜歡將PR「壓扁」到一個單一的提交,這是集合變更集(提取請求者可以使用交互式轉發:git rebase -i HEAD~n,其中n是PR分支中的提交數)。既然你只看到一個提交,我猜這就是你的項目運作的方式。其他人則認爲交互式重新裝訂和擠壓是「重寫歷史」,並且相信即使它們彼此還原,也會合並這組變化。

如果您想要一個清晰的歷史記錄,並且看起來像您一樣,您可以要求請求者清理其分支。他們可以通過添加一個提交修復問題然後擠壓分支,或者通過修改工作樹並更新已經壓扁的提交來完成此操作。然後,他們可以強行推送他們的分支,這樣可以更新PR更新的「清潔」分支。

但不止一種方法去做一件事,所以這是一個答案,不答案。

+0

從我的角度來看,我想壓扁承諾。但這裏的問題是如何從分支中刪除不需要的文件(在主文件中不存在文件)以及如何刪除主文件上不存在的文件更改。 – userbb

+1

將開發人員更改壓縮爲單個提交後,通過刪除不需要的文件並使用'git commit --amend'來修改此提交是很容易的。 –

+0

是的。因此,請求者應該在其分支中進行更改,以解決問題,提交請求,重新壓縮分支,並強制推送。 – pjmorse

相關問題