2012-06-21 63 views
2

我以爲我很熟悉Subversion,但現在我認爲會是微不足道的東西將我絆倒。結賬特定版本的分支

首先,我創建了一個分支了我的特定版本樹幹,就像這樣:

# svn copy http://server/project/[email protected] http://server/project/branches/b2012_03 
Committed revision 13717 

這似乎高興。請注意,我的中繼線有額外的提交,因此13717提交的修訂和我需要分支的特定版本。無論如何它是。

接下來,我想從分支結帳,但是完全在13708(它創建的地方)NOT 13717 ...這對於我的構建過程非常重要,不要問它是否與問題無關。

首先,我想這(使用子目錄「的conf」作爲測試):

# svn co http://server/project/branches/b2012_03/conf conf 
yada yada ... 
Checked out revision 13717. 

# cd conf 
# svn info 
Path: . 
Working Copy Root Path: C:\Users\Brett\conf 
URL: http://server/project/branches/b2012_03/conf 
Repository Root: http://server/project 
Repository UUID: f3edbe5d-cdcd-4b35-8400-34e3054bdd74 
Revision: 13717 
... 

這不是我需要,我需要在13708修訂...消滅「的conf」並嘗試這樣的:

# svn -r 13708 co http://server/project/branches/b2012_03/conf conf 
yada yada ... 
Checked out revision 13708. 

嘿,這看起來令人鼓舞,直到......

# cd conf 
# svn info 
Path: . 
Working Copy Root Path: C:\Users\Brett\conf 
URL: http://server/project/trunk/conf 
Repository Root: http://server/project 
Repository UUID: f3edbe5d-cdcd-4b35-8400-34e3054bdd74 
Revision: 13708 

的修訂是正確的,但要注意的URL。它說'幹'而不是分支,儘管從分支退房。

兩個問題:

這怎麼可能? 如何從分支結帳特定版本?

回答

3

您的分支不存在於r13708。因此你沒有退房。

無論您的構建系統的任何部分依賴於此行爲可能都需要修復。