原文:https://blog.csdn.net/afgasdg/article/details/113113697
----------------
git將子目錄拆分獨立倉庫並保存提交記錄
1. 需求說明
項目原來很大,將多個子模塊柔和在一起,項目越做越大,這是需要將子模塊拆分單獨維護升級版本
2. 拆分獨立倉庫
2.1 將子目錄拆分獨立庫
git subtree split -P <name-of-folder> -b <name-of-new-branch>
1
2.2 創建文件夾,拉取分支
# 1. 創建文件夾,並初始化倉庫
mkdir <new-repo>
git init
# 2 拉取分支(windows 也需要使用 / 分隔)
git pull </path/to/big-repo> <name-of-new-branch>
到此爲止,已經將子文件夾拆分出了獨立庫
3. 清理原倉庫
既然子文件夾已經拆分成獨立倉庫,原倉庫中的子文件夾就可以放心的刪除了
#1. 遞歸刪除所有子文件價中的所有文件
git rm -rf <name-of-folder>
#2. 提交修改
git commit -m 'Remove some name-of-folder'
#3. 刪除分支
git branch -D <name-of-new-branch>
4. 關聯新倉庫
git commit -m "first commit"
# 添加倉庫源
git remote add origin xxx.git
# 提交本地到源
git push -u origin master
參考文檔:
如何將現有 git 倉庫中的子目錄分離爲獨立倉庫並保留其提交歷史
如何清除git倉庫的所有提交記錄,成爲一個新的乾淨倉庫
————————————————
版權聲明:本文爲CSDN博主「java愛好者」的原創文章,遵循CC 4.0 BY-SA版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/afgasdg/article/details/113113697