Regex git svn中如何计算忽略路径?
我有一个简单的回购结构,如下所示:Regex git svn中如何计算忽略路径?,regex,git,git-svn,ignore,Regex,Git,Git Svn,Ignore,我有一个简单的回购结构,如下所示: trunk code othercode doc misc branches b1 code othercode doc misc b2 tags t1 t2 我试图使用gitsvn来克隆它,但想在主干+所有标记和分支上省略doc和misc。但是,忽略路径选项的作用与我预期的不同 ignore-paths = (doc|misc)
trunk
code
othercode
doc
misc
branches
b1
code
othercode
doc
misc
b2
tags
t1
t2
我试图使用gitsvn
来克隆它,但想在主干+所有标记和分支上省略doc
和misc
。但是,忽略路径
选项的作用与我预期的不同
ignore-paths = (doc|misc)
似乎有效,但我担心它也会排除像trunk/code/proj1/doc/
这样的路径,我希望保留该路径
ignore-paths = ^(doc|misc)
不工作--
doc
和misc
由初始的git svn fetch
命令拉入。如何获得一个只与根目录匹配的有效正则表达式?手册页没有说明忽略路径
是否与最终位于git克隆根目录的“相对”路径(doc
等)匹配,或者与SVN remote中的“完整”路径(分支/b1/doc
等)匹配,或者其他内容。它似乎与SVN存储库中的完整路径匹配。这个正则表达式包括SVN路径的主干
/标记
/分支
部分,实现了以下功能:
ignore-paths = ^(trunk|tags/[^/]*|branches/[^/]*)/(doc|misc)/
换句话说:路径必须以以下之一开头:
trunk
,可能后跟一个路径段(不包含标记/
)/
,可能后跟一个路径段(不包含分支/
)/
。。。那么名为
doc
或misc
的路径段是否有一种等价的方法用于没有svn布局的svn回购?@besnep,如果您的意思是“没有标准的svn布局”,那么我想是的:由于正则表达式与完整路径匹配,因此无论存储库的布局如何,您都可以使用它。@mattmchhenry,不完全如此。我的意思是“没有svn布局”,即绝对没有布局。svn copy制作了一个版本拆分。没有使用SVN布局。所以没有树干,没有树枝。。。“如果我理解正确的话,”贝斯内普说,我认为这可能是它自己的独立问题;这将很难在评论中详细讨论。我可以提出一个新的单独问题,但在此之前,我必须为我的另一个问题找到解决方案: