有两个别人的远程git仓库:git@gitee.com:hou_zhan_guo/express-sequelize-api.git和git@gitee.com:hou_zhan_guo/node-admin.git,
包含了一个nodejs后端项目和一个vue前端项目。
如何把这两个仓库合并到我的git@gitee.com:e450n/node-api-admin.git仓库中,并且保持原有的提交记录?
问了问AI,解决方法如下:
合并两个Git仓库到另一个仓库并保持原有的提交记录,你可以使用git subtree或者git subtree命令。以下是使用git subtree命令的步骤:
-
新建并克隆目标仓库:首先,你需要新建并且克隆你想要合并到的仓库。

git clone git@gitee.com:e450n/node-api-admin.git cd node-api-admin -
添加源仓库作为subtree:然后,你可以将第一个源仓库添加为子树。
git remote add -f express-sequelize-api git@gitee.com:hou_zhan_guo/express-sequelize-api.git git subtree add --prefix=express-sequelize-api express-sequelize-api master #添加--squash会压缩所有的提交为单一提交。在这个命令中,
--prefix=express-sequelize-api指定了在目标仓库中放置源仓库的路径。master是源仓库的分支, -
重复步骤2添加第二个仓库:同样的方法添加第二个仓库。
git remote add -f node-admin git@gitee.com:hou_zhan_guo/node-admin.git git subtree add --prefix=node-admin node-admin main #添加--squash会压缩所有的提交为单一提交。 -
推送更改:最后,你需要将更改推送到目标仓库。
git push origin master
结果如下:

© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END











暂无评论内容