git 将多个仓库合并到新仓库的子目录中,并保留原来各仓库的历史记录

#!/bin/bash

# mkdir fairbeauty-crm
# cd fairbeauty-crm
# git init

git remote add fairbeauty-crm-monolith git@gitee.com:rgqancy/fairbeauty-crm-monolith.git
git remote add fairbeauty-crm-lead git@gitee.com:rgqancy/fairbeauty-crm-lead.git
git remote add fairbeauty-crm-test git@gitee.com:rgqancy/fairbeauty-crm-test.git
git fetch fairbeauty-crm-monolith
git fetch fairbeauty-crm-lead
git fetch fairbeauty-crm-test

git checkout -b fairbeauty-crm-monolith-branch fairbeauty-crm-monolith/master
git checkout -b fairbeauty-crm-lead-branch fairbeauty-crm-lead/master
git checkout -b fairbeauty-crm-test-branch fairbeauty-crm-test/master
git checkout master

# mkdir fairbeauty-crm-monolith fairbeauty-crm-lead fairbeauty-crm-test
mkdir fairbeauty-crm-monolith
mkdir fairbeauty-crm-lead
mkdir fairbeauty-crm-test

git read-tree --prefix=fairbeauty-crm-monolith/ -u fairbeauty-crm-monolith-branch
git commit -m "Merge fairbeauty-crm-monolith into dir fairbeauty-crm-monolith"

git read-tree --prefix=fairbeauty-crm-lead/ -u fairbeauty-crm-lead-branch
git commit -m "Merge fairbeauty-crm-lead into dir fairbeauty-crm-lead"

git read-tree --prefix=fairbeauty-crm-test/ -u fairbeauty-crm-test-branch
git commit -m "Merge fairbeauty-crm-test into dir fairbeauty-crm-test"

# git remote add origin git@gitee.com:fairbeauty/fairbeauty-crm.git

git push -u origin master

 

posted @ 2025-03-20 14:05  任国强  阅读(14)  评论(0)    收藏  举报