gpt4 book ai didi

git - 将多个子目录分离(移动)到单独的 Git 存储库中

转载 作者:太空狗 更新时间:2023-10-29 14:36:47 24 4
gpt4 key购买 nike

我有一个包含多个子目录的 git 存储库。我现在想将多个子目录拆分到一个新的存储库中。看起来 git subtree 可以让这变得简单,如果你只有一个子目录你想提取到一个新的 repo 中,但是提取多个子目录呢?我没有看到执行此操作的干净方法。

这是我现在的结构(存储库在 AlphaDirectory 中):

AlphaDirectory
AlphaSubDirectory1
AlphaSubDirectory2
BetaSubDirectory1
BetaSubDirectory2

这就是我需要的(在每个 AlphaDirectoryBetaDirectory 中都有一个单独的存储库):

AlphaDirectory
AlphaSubDirectory1
AlphaSubDirectory2
BetaDirectory
BetaSubDirectory1
BetaSubDirectory2

这与 Splitting many subdirectories into a new, separate Git repository及其引用问题,但与所有 3 个提问中的结构不同。

最佳答案

这种类型的拆分必须使用 git filter-branch 来完成:

git clone AlphaDirectory BetaDirectory

cd AlphaDirectory
git filter-branch --tree-filter "rm -rf BetaSubDirectory*" --prune-empty -- --all

cd ../BetaDirectory
git filter-branch --tree-filter "rm -rf AlphaSubDirectory*" --prune-empty -- --all

关于git - 将多个子目录分离(移动)到单独的 Git 存储库中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38357689/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com