在没有子目录的Git筛选器分支中选择目录
我想将一个目录从现有的git repo提取到一个新的repo中 我正在使用在没有子目录的Git筛选器分支中选择目录,git,Git,我想将一个目录从现有的git repo提取到一个新的repo中 我正在使用 git filter-branch --tag-name-filter cat --prune-empty --subdirectory-filter modules/plugins -- --all 如图所示,它工作得很好 现在我有了一个层次结构 modules/ plugins/ foo/ bar/ baz/ 过滤时,我基本上需要modules/plugins/*(上面的git命
git filter-branch --tag-name-filter cat --prune-empty --subdirectory-filter modules/plugins -- --all
如图所示,它工作得很好
现在我有了一个层次结构
modules/
plugins/
foo/
bar/
baz/
过滤时,我基本上需要modules/plugins/*
(上面的git命令就是这样做的),但不需要modules/plugins/bar
在这样一个git过滤器分支表达式中,这可能吗?如果是,怎么做
按照上面的表述,我的新回购协议以
foo/
bar/
baz/
如何保持模块/插件/
部分的位置?因为我找不到传递类似(虚构的)--子目录过滤器模块/插件之类的表达式的方法,!modules/plugins/bar
我首先运行了git过滤器分支
,然后:
for B in $BRANCHES; do git checkout -f $B
for P in "foo","baz"
do
git rm -r --cached $P
done
git commit -m "Plugins removed"
done
其中$branchs
包含在via之前“激活”的所有分支的列表
for B in $BRANCHES ; do git branch -t $B origin/$B; done
也许可以调整一下:?+Max,谢谢。第二部分是蛋糕上的糖霜