请使用一行代码考虑以下git项目:
master:
x=0
我现在从master创建2个新的主题分支,用于2个不同的即将发布的版本:
git branch release1
git branch release2
我对这两个提交:
release1:
x=1
release2:
x=2
现在,假设我们要将release1部署到Production,因此我们将release1合并到master,build master和deploy。这很好。
git checkout master
git merge release1
OK
master:
x=1
但是,让我们说几周过去了,我们现在想要将release2部署到Production。我们希望将release2合并到master,build master和deploy。但是,由于单行代码已经在不同的分支上编辑,我们会发生冲突。
git checkout master
git merge release2
Conflict
我知道我可以使用合并策略自动接受来自release2的更改...
git merge --strategy-option theirs release2
...虽然这在具有单行代码的项目中是安全的,但它不在真实项目中。
我在这里做的,即维护多个当前发布分支,它们是用于部署的串行候选者,似乎是git的常见用例,但我无法弄清楚git没有一个简单的方法容纳这个。很确定我缺少一些基本逻辑,但我看不到它。
答案 0 :(得分:0)
您的问题似乎是由于您必须在构建和部署该发行版之前将发布分支合并到master。我相信通常的做法是,如果要部署特定版本,那么实际构建特定版本分支并进行部署。这里没有必要让主人参与。