GIT登台环境工作流-合并
我有一个名为“开发”的远程分支,每个新开发人员都应该克隆这个分支,并在完成后将更改推送到它,在服务器上推送后,我看到的是两个分支,一个是来自开发人员的新分支,另一个是源代码/开发 因此,每次我都必须将新分支合并到开发分支。事实上,我是git的新手,我想知道是否有更好的方法GIT登台环境工作流-合并,git,github,git-branch,git-merge,Git,Github,Git Branch,Git Merge,我有一个名为“开发”的远程分支,每个新开发人员都应该克隆这个分支,并在完成后将更改推送到它,在服务器上推送后,我看到的是两个分支,一个是来自开发人员的新分支,另一个是源代码/开发 因此,每次我都必须将新分支合并到开发分支。事实上,我是git的新手,我想知道是否有更好的方法 提前感谢可以将本地分支推送到任意远程分支。要将名为foobar的本地分支推送到名为origin的远程上的分支developer,开发人员可以运行 git push origin foobar:develop 发件人: 提要
提前感谢可以将本地分支推送到任意远程分支。要将名为
foobar
的本地分支推送到名为origin
的远程上的分支developer
,开发人员可以运行
git push origin foobar:develop
发件人:
提要
git推送。。。[ [...]]
稍后我们将看到
是什么:
…
指定要用源对象更新的目标引用。
参数的格式是可选的加号+
,后跟源对象
,后跟冒号:
,后跟目标引用
通常是您想要推送的分支的名称,但它可以是任意的“SHA-1表达式”,例如master~4
或HEAD
(请参阅)
告知远程侧的哪个ref会通过此推送更新。此处不能使用任意表达式,必须命名实际引用。如果不带任何
参数的git push[]
设置为使用
远程..push配置变量更新目标处的某个ref,则可以省略:
部分---这样的推送将更新通常在命令行上不带任何
的情况下更新的ref。否则,缺少:
意味着更新与
相同的引用
这是非常不清楚的:“在服务器上,我推后看到的是两个分支——来自开发人员的新分支和origin/develope”。你能澄清一下吗?开发人员是在自己的机器上工作,还是直接在您的登台服务器上工作?他们在自己的机器上工作,比如说,一个新的开发人员创建了一个名为“local”的本地分支,在将本地分支推到远程repo后,我获得了local并进行了开发,因此每次我都必须合并它们以获得开发人员的更改。现在清楚了吗?是的,我想清楚了。我在下面添加了一个答案。谢谢,还有解释:)通常情况下,合并人员与推动自己开发分支的开发人员是分开的。否则,开发人员可能会相互冲突,并反复尝试将冲突的更改直接推送到共享分支。使用任何最适合您的流程,但上述答案基本上消除了回购协议中关于合并被批准的任何意识。因此,如果您遇到开发人员冲突,那么解开这个结就会变得更加困难。@JoeAtzberger,合并的好处。这个答案显示了如何推送到一个不同名称的远程分支,仅此而已。开发人员应该定期从
origin:develope
获取,并将这些更改合并到自己的更改中。但这与在任何共享分支机构工作没有什么不同。基于该名称,我假设(可能是错误的)更高级的团队成员(可能是OP)将审查开发
分支,并定期将其合并到另一个分支(主
?)。
git push ... [<repository> [<refspec>...]]