如何将原仓库的新提交同步至Git单体仓库?
同步原仓库提交到Git单体仓库(subtree方式)
直接用git subtree pull命令就能把原仓库的新提交同步到单体仓库,步骤如下:
切换到你在单体仓库里的开发分支(比如
master或main),确保本地分支是最新状态:git checkout master git pull origin master执行同步命令,参数和你当初
subtree add时保持一致:git subtree pull -P myMonorepo/someWorkspace git@bitbucket.org:some/project.git master这里的
-P指定的是当初添加子仓库时的路径前缀,后面跟着原仓库的地址和要同步的分支(和你之前add的分支一致)。如果同步过程中出现冲突,和普通Git冲突处理流程一样:
- 打开冲突文件,手动解决代码冲突
- 标记冲突已解决:
git add <冲突文件名> - 完成同步提交:
git commit
注意事项
- 确保命令里的仓库地址、路径前缀、分支名和当初
subtree add时完全一致,不然会报错 - 同步前先拉取单体仓库的最新代码,避免本地代码和远程单体仓库存在差异导致额外冲突
- 如果原仓库后续切换了默认分支(比如从
master改成main),同步时要把命令里的分支名对应改成新的分支名
内容的提问来源于stack exchange,提问作者Phil
相关产品推荐
相关产品推荐

