在提供云Git存储库的服务上,我总能找到合并请求。它的目的是什么?谁应该创造它?
此外,合并请求的生命周期是什么?有人创造它,然后 - 它应该通过什么周期?
答案 0 :(得分:9)
合并请求和拉取请求基本上是指同一件事。 GitHub和Bitbucket等工具选择名称拉取请求,因为第一个手动操作是拉动功能分支。 GitLab和Gitorious等工具选择名称合并请求,因为这是受让人要求的最终操作。
如果您正在使用功能分支并且想要在主分支中合并您的更改(例如,主分支),则会创建拉/合并请求。合并请求充当代码审查工具,如果您的代码显示缺点/问题,任何人(通常是其他开发人员)都可以提交并推送修复。
生命周期:您创建分支,修复某些问题或添加功能,创建拉/合并请求,然后将其分配给某人,他/她将审核您的修复并接受/拒绝拉/合并请求
请注意,合并/拉取请求不应与" git merge"混淆。或者" git pull"命令。强>
答案 1 :(得分:5)
我相信你指的是你合并到你的主分支的拉请求(PR)。拉请求是那些将代码分支(分叉)然后提交回主分支的人的标准方式。通常一个PR应解决一个错误或添加一个功能。这通常使用分叉代码上的功能分支实现,然后在功能完成时在该分支上创建拉取请求。这使得合并变得更加容易,这意味着如果您处理多个功能而一个被拒绝但另一个被接受,则它们的分支不会发生冲突。
所以要回答你应该创建它们的问题,通常是那些分叉代码的人。如果你选择工作的话,这甚至可能是开发团队的成员。这项工作的主要领域是公共开源项目。例如,openssl有一个公共github,任何人都可以分叉,然后如果有人想添加一个功能或修复一个bug,他们会:fork,branch,commit,push和submit PR。
创建PR后,生命周期取决于您。它没有预定义。一般来说,您必须做的最少的事情是:确定错误或功能是否值得,检查代码以确保它完成所说的内容并编写得很好并满足为您的项目设置的任何编码标准,然后如果它好,接受它并合并它。
您可以将生命周期变得更复杂,方法是将其转移到开发分支,以便在合并到主服务器之前由具有其他开发功能的测试人员进行测试,但实际上您需要找到适合您项目的工作流程。