萌萌の初音
萌萌の初音
发布于 2022-11-16 / 475 阅读
0

两个相同的git远程库同步一个分支并都更新在master上

问题提要

两个相互独立的网络分别有同一个项目的git库,分别简称A和B,A建立了分支并提交了代码,B需要拉下A分支并把分支同步到自己的git中,并且A将分支合并到master后,B也将分支合并到自己的master上;

1.如何在B端同步A端的分支?

git fetch A
git checkout A/test
git branch B/test
git push B

git fetch A:用于拉下A库的相关分支信息;
git checkout A/test:切换至A库的test分支;
git branch B/test:由于B库没有A库的test分支,此时执行git checkout A/test会显示head为游离状态,需要B库也建立test分支;
git push B:最后提交B库,分支在AB上都保持了同步;

1.A库合并主分支如何同步至B?

git checkout B/master
git fetch A
git pull A/master
git merge A/master
git push B

git checkout B/master:将B项目切换至master上;
git fetch A:用于拉下A库的相关分支信息;
git pull A/master:把A库主分支拉下来;
git merge A/master:合并A库的代码和git修改信息至B库;
git push B:推送B库远程分支,AB两个主分支都与分支进行了合并,并保持同步;

以上就是两个库之间代码同步的记录