2014-02-20 192 views
0

剛從Git開始,並希望從右腳開始。我做了一些研究和建議的工作流程似乎是:Git Workflow和Rebase

-One時間只有:(例如:Git workflow and rebase vs merge questions"git pull" or "git merge" between master and development branches)克隆中央回購協議回購的個人

- 創建一個開發分支

- 不要犯下的開發分支

-Every所以經常拉在主分支(正從中央回購的變化)和重訂製定更新的主分支分支如果主人確實已經更新

- 當完成開發的開發分支合併掌握和開發分支功能(後再次對主拉)

我有這幾個問題:

  1. 當重訂未能因合併更新的主分支和開發分支之間的衝突(從開發人員編輯同一個文件),你應該中止並切換到合併?

  2. 爲什麼合併時功能完成,而不是重新綁定?

  3. 每次我完成開發功能或修復錯誤時,我是否應該推一下?

回答

0
  1. 當你得到一個重訂期間發生衝突,你可以簡單地解決它,繼續墊底。放棄並進行合併反而無濟於事,無論如何你仍然會遇到衝突。

  2. 當您完成某個功能時,無論是否在master之上重新設置功能/開發分支,您都會想要合併。預先設定的區別在於,它使您有機會以(希望)更清晰的方式重寫,結構,形狀和呈現歷史記錄,而不僅僅是進行合併 - 導致合併提交(也稱爲「非快進「合併)。

    但是,有些人喜歡創建一個合併提交,只是爲了顯示分支發生的地方。您甚至可以在使用「非快進」標誌(即git merge --no-ff)進行重新綁定之後強制執行合併提交。

  3. 完成某項功能或錯誤修復後是否推送取決於項目,以及您希望如何與其他人共享您的代碼(如果您完全共享)。