2010-03-19 115 views
2

我们SVN了迄今为止传统布局:检查出从新增分支机构目录远程分支

trunk 
branches/ 
tags/ 

我仓库很久以前克隆的整体和一切都工作正常。但几个星期前,有人想通了,特别是释放应该去发布/而不是分支机构/所以布局更改为以下几点:

trunk 
    branches/ 
    releases/ 
    tags/ 

有什么办法,我可以开始跟踪发布/无需再次克隆整个仓库(其中包含超过15K的修订版...)?这是我的配置看起来像在这一刻:

[core] 
     repositoryformatversion = 0 
     filemode = true 
     bare = false 
     logallrefupdates = true 
     ignorecase = true 
     autocrlf = false 

[svn-remote "svn"] 
     url = https://blahblah 
     fetch = trunk:refs/remotes/trunk 
     branches = branches/*:refs/remotes/* 
     tags = tags/*:refs/remotes/tags/* 

不幸“混帐SVN取”出于某种原因没有取从发布/任何东西,“混帐分支-r”不显示此目录中的任何版本。

回答

1

git help svn,似乎你可以指定你的配置文件的多个branches=...行:

当使用多个--branches或--tags,混帐SVN不会自动处理名称冲突(例如,如果来自不同路径的两个分支具有相同的名称,或者分支和标签具有相同的名称)。在这些情况下,使用init来设置您的git存储库,然后在第一次读取之前,编辑.git/config文件,以便分支和标签与不同的名称空间相关联。例如:

branches = stable/*:refs/remotes/svn/stable/* 
branches = debug/*:refs/remotes/svn/debug/* 

在你的情况,如果你确定你不会有任何名称冲突,我想你可以有下面几行:

branches = branches/*:refs/remotes/* 
branches = releases/*:refs/remotes/* 
+0

烨。看起来像在工作!唯一的问题是,由于某种原因,我没有获取释放(从树干分支)的历史记录。但对我而言,这是一个小问题。谢谢。 – Michal 2010-03-19 14:19:06