2010-02-10 74 views
1

我創建了一個新的分支來完成一些(打破)工作,而另一個開發人員繼續沿着主幹工作。那麼,現在我已經完成了這個分支並準備合併,我遇到了麻煩。如何將不同步的功能分支合併到主幹中?

我正在使用TortoiseSVN。我做了「合併兩棵獨立的樹」,看起來只是將所有我的更改從樹枝複製到樹幹,而不進行任何合併或對樹幹中進行的更改有任何尊重。

我該如何強制它保持舊的樹幹變化和合並在分支而不是完全覆蓋樹幹?

如果你不明白,我有一個名爲Grid.cs的文件,並且在trunk中做了很多工作,所以分支的副本確實過時了。那麼,當我去合併時,它會用分支的副本替換主幹的副本,而不嘗試合併它們或任何東西,就好像分支的副本更新一樣,儘管事實並非如此。

回答

2

哎呀,當你開發一個 單獨的分支一個新的功能並沒有在http://tortoisesvn.net/docs/release/TortoiseSVN_en/tsvn-dug-merge.html

特性分支維護

讀取足夠的文檔..這是一個好主意, 工作了當功能完成時重新整合 的策略。如果其他 工作正在中繼線上,在相同的 時間,您可能會發現差異 隨着時間的推移變得顯着, 合併回成爲一個噩夢。

如果功能比較簡單 和發展不會需要很長時間 那麼你可以通過一個簡單的方法, 這是保持分支完全 分開,直到特點是 完成,然後合併分支 變回進入後備箱。在合併 嚮導中,這將是一個簡單的合併a 修訂版本範圍,修訂版 範圍是 分支的修訂範圍。

如果功能需要更長的時間 並且您需要考慮 中繼線的更改,那麼您需要保持 分支同步。這只是意味着 週期性地將中繼線 更改合併到分支中,以便 分支包含所有中繼線更改 加上新功能。同步過程使用合併版本 修訂版本。當功能 完成後,您可以使用重新合併 分支或合併兩個不同的樹來將其合併回 到主幹。

相關問題