好好爱自己!

【转】git将子目录拆分独立仓库并保存提交记录

原文:https://blog.csdn.net/afgasdg/article/details/113113697

 

https://blog.csdn.net/afgasdg/article/details/113113697

https://blog.csdn.net/yb223731/article/details/83274446

此博客只是为了记忆相关知识点,大部分为网络上的文章,在此向各个文章的作者表示感谢!

----------------

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

posted @   立志做一个好的程序员  阅读(431)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)
历史上的今天:
2018-03-17 [转]PHP并发IO编程之路(深度长文)
2018-03-17 php-cpp用来开发php的拓展
2018-03-17 [转]通俗易懂的php多线程解决方案
2017-03-17 [转]linux下tar.gz、tar、bz2、zip等解压缩、压缩命令小结

不断学习创作,与自己快乐相处

点击右上角即可分享
微信分享提示