1

我是 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

我接近了吗?

4

2 回答 2

3

您需要合并2.15master然后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

当然,您需要检查合并是否正确,并可能在推送之前测试结果。

于 2013-02-25T23:06:34.380 回答
1

我建议您首先确保您的本地 2.15 和 master 分支包含来自远程 repo 的所有更改:-

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

然后,假设您想要 master中的 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
于 2013-02-25T23:21:27.007 回答