我是新手使用Git,所以如果这是微不足道,我道歉.我有一个使用Github和EGit设置的私有存储库.
要使用远程版本(本质上是a )更新和合并我的本地存储库分支git pull
,我Team > Pull
在Eclipse中使用.
要将分支合并到主分支,我必须请求并随后批准Github上的Pull请求.
呼叫
git pull
和发送拉取请求有什么区别?
我已经看到这与Fork and Pull协作开发模型有关,并用于代码审查.我想我理解拉取请求的动机和实用性,但具体到底是什么?
如果使用git pull
,则将更改从远程存储库中提取到您的更改中.
如果您将拉取请求发送到另一个存储库,则要求他们的维护人员将您的更改提取到他们的中(您或多或少要求他们使用git pull
您的存储库中的a).
如果您是该存储库的维护者,那么假设您在该工作流程中扮演两个角色,那么您似乎会变得更加困难.您也可以将您的开发分支本地合并到主分支中,并将该主分支直接推送到您的GitHub存储库.
(作为旁注,如果你是Git的新手,我建议使用git fetch
,然后git merge
代替git pull
.git pull
有效地git fetch
跟着git merge
,但是单独执行它们可以让你更好地控制潜在的冲突.)
一个拉请求请求存储库的维护者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(-)