2016-12-01 58 views
0

我一般使用以下步驟外的變化:的Git合併顯示的功能變化

  1. 創建一個特性分支。
  2. 功能開發完成後,我將主人合併到功能分支中,以便與主人合作。
  3. 將合併的更改推送到功能分支。
  4. 最後,我將功能分支合併到主設備中,以便發佈。

第4步後,如果我看到'主'分支中的提交,其中一個顯示「合併分支'主'到'。此提交顯示了我在處理我的功能時由其他人所做的所有更改。這很好,但是當我看到master在這個提交時,它看起來很混亂,並且它顯示了巨大的提交。這些是對功能分支的提交。他們爲什麼出現在主分支中?

是否有一種方法可以將功能分支合併到主設備,但是也確保只有功能更改顯示在主設置日誌中?

回答

2

這就是爲什麼你rebase。當您準備將主人合併到您的分支以獲取主人的最新代碼時,請在您的功能分支中執行git rebase master。這基本上回滾你的功能分支中的所有提交,從master獲取最新的提交以「更新」你的功能分支,然後在你的功能分支上重放你的提交。這樣,當您最終將功能分支合併到主設備中時,您沒有合併提交。

你可以看到一個很好的圖解釋here

+0

如果您包含一個有用圖表,顯示重新綁定如何避免醜陋(並且令人困惑)的合併提交,可以獲得獎勵分數。 –

+0

我不認爲我會比我在答案中添加的鏈接做得更好。 :) – yelsayed

+0

謝謝! rebase解釋它。 Atlassian教程非常有用。 – Vamsi