我是Git的新手,刚刚负责处理构建和发布。
我们有一个名为2.15的远程分支。大约2周前,有人创建了一个名为2.16的远程分支;但是,从那时起我们已经对2.15进行了更改。
今天是发布日,所以我需要将所有的更改从2.15发送到“master”,然后将它们拉到2.16。
我一直在寻找正确的方法来做到这一点,但我对答案没有信心。我想也许我可以这样做:
git checkout 2.15
git pull origin 2.15
git push origin master
git checkout 2.16
git pull origin master
我关闭了吗?
答案 0 :(得分:3)
您需要将2.15
合并到master
和2.16
中,然后推送这两个分支。你的命令错了,你需要像
git checkout master
git merge 2.15
git checkout 2.16
git merge 2.15
git push origin master 2.15 2.16
当然,您需要检查合并是否正确,并可能在推送之前测试结果。
答案 1 :(得分:1)
我建议您首先确保您的本地2.15和主分支包含来自远程仓库的所有更改: -
git checkout master
git pull origin master
git checkout 2.15
git pull origin 2.15
我假设您还没有本地2.16分支,所以让我们创建它与远程brancb匹配: -
git checkout -b 2.16 remote/2.16
然后,假设您想要在主中进行2.16更改,请使用以下方法将更改从2.15合并到2.16: -
git merge 2.15
然后将2.16(现在也包含2.15)合并到master中: -
git checkout master
git merge 2.16
最后将所有这些更改推送到您的远程仓库: -
git push origin master
git push origin 2.16
git push origin 2.15