簡體   English   中英

SVN將以前的修訂版合並到工作副本中

[英]SVN merge previous revision into working copy

如果

  • 我正在修訂版5的SVN分支機構。
  • 我做了一個更改,承諾創建修訂版r6。
  • 當r6引入問題時,恢復為r5,並提交,創建r7
  • 繼續在r7上工作,最終將更改提交到r10

如何將r6中所做的更改合並到我的工作副本中?

我試過了

svn merge -r5:6 .

svn merge -r5:HEAD .

兩者似乎都無能為力。 我究竟做錯了什么?

試試這個:

svn merge --ignore-ancestry -r5:6 .

或使用更新的語法:

svn merge --ignore-ancestry -c6 .

順便說一句:我建議您始終指定要使用的文件而不是“。”

如果您使用的是相對較新的svn版本,則可以使用:

svn merge -c -6 .


(或您想要還原的特定文件,而不是'。')
這是一個簡寫:

svn merge -r6:5 .

因此,如果您使用較舊的subversion版本(1.6.x之前),則可以使用此語法。

這可能會將屬性引入您的存儲庫(svn:mergeinfo,如果內存服務),至少如果您在整個目錄上執行合並。 將更改還原為單個文件或文件集不會影響屬性。 如果您不希望將這些屬性添加到存儲庫中,則可能需要回退到補丁(自動或手動)。

我對命令行svn不太熟悉。 但是如果正確的用法沒有得到你想要的結果我會嘗試:

  1. 從版本r6創建補丁(r6和r5之間的差異)。
  2. 將其應用於工作副本。

嘗試撤消合並出初始還原的修訂版。

例如,而不是svn merge -r 5:6嘗試svn merge -r 7:6。

你可以回復。 創建一個標簽。 完成后,您可以將標記中的更改合並到您正在使用的分支中。

暫無
暫無

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

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