其中 -P 后面为要拆分的项目名称, -b 为在老项目上创建的一个分支名称
2,在老项目总目录并列的目录创建 mytemp目录,用来拉取拆分项目的分支
3, cd mytemp; git init
4,git pull ../zszt insurance-temp
5, git remote add origin https://gitee.com/qyzj_2/SimVue.git
6, git push -u origin SimVue.git
Git Subtree是一个强大的命令,它可以将一个存储库的子目录拆分成一个独立的存储库,并保留其历史记录和关联。以下是使用Git Subtree拆分存储库的步骤:
git clone <original-repo-url>
git subtree split--prefix=<subdirectory-path>-b <new-branch-name>
这将创建一个新的分支,并将子目录的历史记录拆分到该分支上。
接下来,创建一个新的空白存储库,并将新创建的分支推送到该存储库:
git init <new-repo-name>cd<new-repo-name>git pull ../<new-branch-name>git remote add origin <new-repo-url>git push -u origin master
这将创建一个新的存储库并将拆分的子目录推送到该存储库中。
最后,您可以删除原始存储库中的子目录:
gitrm-r <subdirectory-path>git commit -m "Remove subdirectory from original repo"git push origin master
这将删除原始存储库中的子目录,并将更改推送到远程存储库。
另一种拆分Git存储库的方法是使用Git Filter-Branch命令。以下是使用Git Filter-Branch拆分存储库的步骤:
git clone <original-repo-url>
git filter-branch --subdirectory-filter <subdirectory-path>----all
这将创建一个新的分支,并将子目录的历史记录拆分到该分支上。
接下来,创建一个新的空白存储库,并将新创建的分支推送到该存储库:
git init <new-repo-name>cd<new-repo-name>git pull ../<new-branch-name>git remote add origin <new-repo-url>git push -u origin master
这将创建一个新的存储库并将拆分的子目录推送到该存储库中。
最后,您可以删除原始存储库中的子目录:
gitrm-r <subdirectory-path>git commit -m "Remove subdirectory from original repo"git push origin master
这将删除原始存储库中的子目录,并将更改推送到远程存储库。
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!