[英]Git Pull vs. Pull Request
我是新手使用Git,所以如果这是微不足道,我道歉。 我有一个使用Github和EGit设置的私有存储库。
要使用远程版本(本质上是git pull
) 更新和合并我的本地存储库分支,我使用Team > Pull
in Eclipse。
要将分支合并 到主分支,我必须请求并随后批准Github上的Pull请求 。
调用
git pull
和发送pull请求有什么区别?
我已经看到这与Fork and Pull协作开发模型有关,并用于代码审查 。 我想我理解拉取请求的动机和实用性,但具体到底是什么?
如果使用git pull
,则将更改从远程存储库中提取到您的中。
如果您将拉取请求发送到另一个存储库,则要求他们的维护人员将您的更改提取到他们的中(您或多或少要求他们使用您的存储库中的git pull
)。
如果您是该存储库的维护者,那么假设您在该工作流程中扮演两个角色,那么您似乎会变得更加困难。 您也可以将您的开发分支本地合并到主分支中,并将该主分支直接推送到您的GitHub存储库。
(作为旁注,如果你是Git的新手,我建议使用git fetch
,然后使用git merge
而不是git pull
git pull
实际上是git fetch
然后是git merge
,但是单独执行它们会让你更好地控制它们潜在的冲突。)
pull请求是请求存储库的维护者git pull
一些变化(如名字已经暗示)。 GitHub提供了一个易于使用的附加界面,简化了对此类请求的审核。
您不需要使用它来合并某个分支。 但您可以使用它,重新检查是否所有更改都已准备好合并可能会有所帮助。 如果您不想要或不需要额外的安全性,您可以简单地git merge
分支。
git
本身也有一个创建拉取请求的命令,专门用于邮件列表。 您可以使用git request-pull
命令请求生成。 事实上,使用此命令需要为某些项目提交拉取请求! 该命令的输出看起来与此类似(取自官方git主页 ):
$ git request-pull origin/master myfork
The following changes since commit 1edee6b1d61823a2de3b09c160d7080b8d1b3a40:
John Smith (1):
added a new function
are available in the git repository at:
git://githost/simplegit.git featureA
Jessica Smith (2):
add limit to log function
change log output to 30 from 25
lib/simplegit.rb | 10 +++++++++-
1 files changed, 9 insertions(+), 1 deletions(-)
远程回购======>本地回购
git pull = Git Fetch + Git Merge
这是一个Github的事情。
远程Github Repo <========从=====拉取请求你的Github回购
是否远程github repo的维护者会接受你的请求,是在她身上。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.