我們最近從svn遷移到git。我們目前有一個發佈分支和一個主分支。我們在發佈當天將版本合併到主版本並對其進行標記。補丁發佈後將版本合併到主版本git
現在,如果我們要做一個補丁發佈。這是創建一個關閉主分支作爲修補程序分支,並將其合併到主,然後創建一個新的標籤,並從那裏釋放。然後,我們還將該修補程序合併到發行版中,以便在QA進行測試時,發行版具有生產中的所有更改。
然後,當我們必須將發佈分支合併回主服務器時,問題就出現了。
1)我們不能做一個快進的釋放作爲主已發散
2)如果我們做一個正常的合併,甚至將是安全的(這也將增加一個合併提交)將這些代碼是有時候會發生什麼,我們不確定會發生什麼
3)我們可以重新發布master的版本,但這是一個常見的公共分支(會讓開發者本地分支變得糟糕?)並且rebasing發佈也會很危險? 如果我們不理想的底墊,我們不會對主分支幹淨的歷史與標記點的所有版本無論是
你怎麼做一個版本,通常處理這個
「我們在發佈當天將版本合併到主版本中」讀起來就好像你做了'git checkout master;混帳版本'似乎倒退。 – Schwern
將'release'合併到'master'中。 'master'已經'發散'了,但是它在'release'中也是一樣的提交,所以不應該有衝突。您所描述的內容與[git flow](http://nvie.com/posts/a-successful-git-branching-model/)策略類似,這是非常常用的策略。當使用git flow時,有一個'development'分支(類似於'release'分支)。從'master'分支的修補程序與'master'和'development'合併。 'development'稍後可以再次合併到'master'中(在git流的情況下通過'release'分支)。 – Peter