我在远程(master,development,featurebranch)上有三个分支。我想要的是,当我推动 branch1 时,它应该尝试将其推送到开发分支,或者我喜欢的任何类型的分支。我已经看到了我应该做的事情的例子
git push origin local_name:remote_name
但是当我尝试它时,Git会自动将本地分支合并到远程分支。我希望它在该分支上有一个pull请求。在GitHub上有这个漂亮的功能,我可以切换并选择我希望它合并的分支:
但有没有办法当我将我的分支推送到远程分支时,基本分支被设置为我指定的远程分支?
答案 0 :(得分:1)
但有没有办法当我将我的分支推送到远程分支时,基本分支被设置为我指定的远程分支?
这意味着避免:
x--x--x (branch1) x--x--x
==> push ==> \
y--y--y (origin/remote-name) y--y--y--M
而是得到:
y--y--y--x--x--x
只有在推送之前,branch1
已在origin/remote_name
之上重新定位时才有可能:
git fetch origin
git checkout branch1
git rebase origin/remote_name
git push branch1:remote_name
我们的场景就像Master分支是,比如实时app,每当我们发现缺陷时,我们创建一个修复分支(应该从开发分支分支),创建我们的修复并将fix-branch推送到开发分支首先在测试和QA发生的地方。完成后,将其推回主人。
在您的情况下,您需要重新绑定并推送到另一个分支,一个不 dev
,因为dev
表示不同的开发工作,一个连续的修改,而不是准备修复。
创建一个发布分支,它代表您在master
(prod)之上逐个集成的热修复。
每次看到错误:
bug
,release_branch
bug
分支以进行质量检查以进行审核master