Checkout特定版本的分支

时间:2012-06-21 02:43:22

标签: svn

我以为我对Subversion非常了解,但现在我觉得这件事是微不足道的,这让我很难受。

首先,我创建了一个特定版本的主干分支,如下所示:

# svn copy http://server/project/trunk@13708 http://server/project/branches/b2012_03
Committed revision 13717

这似乎很开心。请注意,我的主干已经有了额外的提交,因此13717提交了修订,我需要分支特定版本。无论如何它就是。

接下来,我想从分支机构签出,但是确切地在13708(创建它的地方)不是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。尽管从分支机构退房,它仍然说“主干”而不是分支。

两个问题:

怎么可能? 如何从分支机构签出特定版本?

1 个答案:

答案 0 :(得分:3)

您的分支机构在r13708处不存在。因此,你没有那里来检查。

您的构建系统的哪一部分依赖于此行为可能需要修复。