【发布时间】:2017-07-19 09:27:47
【问题描述】:
我们有这个分支结构:
- master(在生产环境中构建/部署)
- qa(在问答环境中构建/部署)
- 功能分支
所以我们从 master 创建一个特性分支,然后当我们需要通过 Q&A 验证特性时将其合并到 qa(从 master 创建)。
有时我们需要从 master 重新构建 qa,因为一些开发直接合并到 master(小型或错误修复)。
我做了什么:
git checkout qa
git reset --hard master
git push --force origin qa
所以遥控器现在完全符合我的要求。
但是现在,当其他开发人员执行 git fetch 时,他们在本地 qa 上的所有不在 master 上的提交都显示为传出提交。这似乎合乎逻辑。我们不得不在每个人的机器上做一个git reset --hard origin/qa,但这有点危险。
还有其他解决方案吗?
编辑:我们为什么要这样做:qa 分支上的某些功能已被放弃,因此我们需要从 master 重新创建 qa 分支,然后在其上合并所有其他分支。
【问题讨论】:
-
我不太了解您的用例。你为什么不简单地将 qa 重新设置到 master 上?
-
我不明白 - 你将
qa重置为master但推送preprod分支? -
@phd,我的错字错了,我编辑了它
-
@running.t ,我为添加用例而编辑
标签: git feature-branch