初面网初面网

拆分一个git仓库

一个git仓库中包含多个项目,但是我们只需要其中的一个项目,其他项目都不需要。

第一步:将子目录分离为新分支

git subtree split -P 源项目名 -b 新分支

第二步:创建一个新的仓库文件夹

# 切换到上级目录
cd ..

# 创建新文件夹
mkdir xxx

# 进入新文件夹
cd xxx

# 初始化新仓库
git init

第三步:拉取分离的分支到新仓库

git pull path xxx

其中,path是原仓库的绝对路径,xxx是分支的名字

第四步:检查结果

检查是否成功分离出子目录。

(可选)第五步:清理原仓库

清理原仓库

git branch -D xxx

删除原目录 (如果原仓库不再需要这部分代码)

git rm -r ddd

其中,ddd是原仓库中需要分离的子目录。

git commit -m "Remove ddd directory (moved to separate repo)"

更新于 2025/12/28