今天碰到有个需求,同步两个仓库的代码
假设
仓库A 有dev分支
仓库B 有dev分支
现在 我需要 把A仓库的dev分支上的两个功能,合并 到 B 分支的dev上
#1 A仓库下查看remote
git remote -v
#假设查看到的地址:origin ssh://get@xx.git
#2 B仓库下添加A的remote
git remote add origin_a ssh://get@xx.git
#(origin_a 是A仓库的源在B仓库下的名字)
#3 B仓库下查看远程url 是否添加成功
git remote -v
#4 B仓库下,将A仓库的dev分支拉取到本地,并命名为dev_a(表示这是A仓库的dev分支)
git pull origin_a dev:dev_a
#5 B仓库查看分支
git branch
#此时 应该有 dev 和 dev_a
#6 B仓库下,切换到dev_a 分支上,并查看 提交记录
git checkout dev_a;
git log
# 假设要合并 commit1 的功能,拷贝commit1
#7 B仓库下,切换到dev 分支上
git checkout dev;
#8 B仓库下,合并
git cherry-pick commit1
#9 B仓库下 提交
git push origin dev
#此时 A仓库的dev分支上的功能已经同步到B仓库的dev分支
我本地的实际效果是这样:
查看当天remote
添加新的remote地址,并命名service
并且从新的remote地址上拉去分支develop到本地,并命名sdevelop
查看要合并的内容 commit
使用cherry-pick检入合并,提交