簡體   English   中英

如何在重新整合時刪除揮之不去的svn:mergeinfo屬性?

[英]How to remove lingering svn:mergeinfo properties on reintegrate?

我想獨立於項目的其他開發工作進行少量更改。 我一直以此為指導。

我從/ trunk / app / module到/ branches / pete / feature-branch的svn cp開始,這是r393

進行一些更改后,在主干和分支之間來回合並以保持最新狀態,我完成了我的功能,然后又開始在主干上工作。

幾處修訂之后,我決定也許應該清理功能分支,以便嘗試重新集成它。

  1. 我簽出了功能分支和主干的新副本。
  2. 我將主干更改合並到功能分支中並提交了它們
  3. 然后,我在主干上進行了合並--reintegrate ^ / branches / pete / feature-branch,生成了r434

從代碼的角度來看,一切看起來都不錯,但是現在我的trunk / app / module仍然具有svn:mergeinfo屬性。

$ svn pg svn:mergeinfo
/branches/pete/feature-branch:393-433

據我了解,svn:mergeinfo應該為空,這些修訂應該被“刪除”,或者這樣行嗎?

子文件夾上的此信息顯示(偶然嗎?)您在子文件夾上合並(不是在主干上,而是在/ trunk / app / module上)。

現在,Subversion知道它將不再合並來自此分支的這些修訂。 通常,您只應在最頂層的文件夾上進行合並,因此mergeinfo僅在此文件夾上。

SVN-Team不建議僅合並一個子目錄( 請參閱SVN書主題

避免子樹合並和子樹mergeinfo。 僅在分支的根目錄上執行合並,而不在子目錄或文件上執行合並(請參閱“子樹合並和子樹合並信息”部分)。

仍然可以進行所有合並,但是最終會在不同的文件夾級別上得到很多(不同的)mergeinfo,這使得以后很難弄清正在發生什么以及為什么SVN如此行為。

此外,總是有可能(不建議這樣做!)刪除merge-info屬性,以“重置” mergetracking功能。 通常也通過刪除分支來完成。 這樣,第二次合並的風險通常可以忽略不計。

暫無
暫無

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

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