4

subgit 是否支持多个“分支”目录?

例如,如果一个人有一个 SVN 存储库,如下所示:

trunk/...
branches/<branch>/...
releases/<release>/...
tags/<tag>/...

但“发布”实际上只是发布分支。

我们希望 SVN 中的“branches/”和“releases/”都成为 Git 中的分支。

如果在 Git 中创建了一个新分支,那么在 SVN 中,我们需要在“branches/”中创建一个新目录(即“releases/”已被弃用)。

所以我们想要的是多个分支映射,但其中一个是“主要”的。

4

1 回答 1

4

是的,从 2.0 版开始,您可以在 SubGit 配置中多次指定“分支”选项。有一个限制:模式的左右部分不应相交或相同(否则规则会变得不明确):

trunk = trunk:refs/heads/master
branches = branches/*:refs/heads/*
branches = releases/*:refs/heads/releases/*
shelves = shelves/*:refs/shelves/*
tags = tags/*:refs/tags/*

您不能同时映射releases/*branches/*refs/heads/*,因为这会使规则模棱两可(在这种情况下,SubGit 不知道是映射refs/heads/branchbranches/branch还是映射到releases/branch)。

于 2013-10-07T10:31:55.990 回答