簡體   English   中英

svn-如何合並在兩個分支中手動創建的目錄?

[英]svn - how to merge a directory that was manually created in two branches?

我面臨svn合並的問題,這是方案

樹干
分行1
分行2

同時在Branch1Branch2上創建了一個新文件夾“ abc”,二者的代碼庫均已更新,直到發布Branch1 Branch2上進行了進一步的代碼處理。
現在,將Branch1合並回Trunk時,一切順利。
當Trunk合並到Branch2時,發生樹沖突(如預期)。

但是現在我不確定如何進行。 我想保留Branch2中的lcoal更改,並正確地合並目錄,以便將來的合並不會引起任何樹沖突。

有任何想法嗎? 有人遇到過這樣的問題嗎? 有什么解決方法嗎?


問一些問題的答案:問為什么您同時創建兩個分支?
答:我正在將由25個開發人員組成的小組合並svn任務。 2開發人員創建了此。

問:為什么兩個分支都創建此abc目錄?
答:使用的是同一項目。 一個正在研究它的初始階段,而另一個則在它的實際發布之前就對其功能進行了研究。

問:abc是項目還是現有項目下的新目錄?
答:這是一個新項目

該abc目錄是否存在於主干中?
答:不可以

顯然,如果您從2個來源合並相同的目錄名稱,則將導致樹沖突。 您可以嘗試合並分支1,然后合並分支2對目錄的后續更改(例如,跳過創建目錄的修訂,僅合並包含對內容所做更改的修訂)

或者,您可以在合並分支1和提交之后手動復制更改。

在將/trunk從根目錄合並到Branch2之前,將子樹/trunk/abc合並到/Branch2/abc

要顛覆/Branch1/abc/Branch2/abc是兩個完全獨立的目錄。 兩者之間沒有共同的歷史。 下次,您需要使用svn cp ,以便Subversion可以知道它們是相關的。

您可以嘗試--ignore-ancestory標記,但這將進行雙向合並而不是三級合並。 這意味着,如果我合並/Branch2/Branch1 ,在abc上的目錄/Branch1將是什么是在/Branch2

為什么要同時創建兩個分支? 而且,為什么兩個分支都創建此abc目錄? abc是項目還是現有項目下的新目錄? abc目錄是否存在於主干中?

聽起來您可能需要復習CM慣例。 不幸的是,沒有更多的信息,我無法給您更多具體的建議。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM