我在Subversion版本庫的一個分支上做了大量的開發工作。在整個過程中,我通過手動跟蹤我放入的哪些內容來合併樹幹更改。我意外地閱讀了一本SVN 1.0書,明確告訴我SVN不跟蹤哪些更改已合併,因此我試圖指定哪些合併到我的分支中,使其與主幹和所有正在進行的開發保持同步。如何使用SVN將更改從repo文件夾合併到自身?
問題出在這裏:我在同步時錯過了很多更改。我將它同步到了幾天前我認爲的日期,然後將其重新放回到我標記並刪除當前主幹的主幹中,然後將我的分支複製到主幹中。然而,在主幹上進行的一些開發(實際上相當多)已經丟失了,因爲在將分支移入主幹之前我沒有應用這些更改,並且沒有合併--reintegrate(它會將我的更改應用於主幹)。自那時以來,開發已經在這個新主幹上完成了(一整套錯誤修正),所以我無法真正重做合併。
重要提示:我實際上使用SVN 1.5,它使用svn:mergeinfo屬性。這很好,因爲我確切地知道我錯過了哪些修訂,但是我無法讓SVN應用它們。我試圖在我的工作拷貝(主幹的結賬)這樣做:
svn merge http://example.org/svn/trunk
無濟於事,這也:
svn merge --ignore-ancestry http://example.org/svn/trunk
這似乎運用了太多的變化,我認爲這應用了有史以來所做的每一個變更集,而不僅僅是我更新分支時錯過的變更集。
請幫忙!