github-Git Pull vs.请求请求

我是使用Git的新手,如果这很简单,我深表歉意。 我有一个使用Github和EGit设置的私有存储库。

要使用远程版本(本质上是git pull)更新并合并我的本地存储库分支,我在Eclipse中使用Team > Pull

要将分支合并到master分支,我必须请求并随后在Github上批准Pull Request。

调用git pull和发送请求请求之间有什么区别?

我已经看到这与Fork and Pull协作开发模型有关,并且用于代码审查。 我想我了解请求请求的动机和有用性,但这到底是什么?

Jonn asked 2020-06-18T07:50:40Z
3个解决方案
56 votes

如果您使用git fetch,则将更改从远程存储库中提取出来。

如果将拉取请求发送到另一个存储库,则要求其维护者将您的更改拉入他们的更改中(您或多或少要求他们使用存储库中的git fetch)。

如果您是该存储库的维护者,那么您假装在该工作流程中扮演两个角色,似乎使工作变得更加困难。 您最好将开发分支本地合并到master分支中,然后将该master分支直接推送到GitHub存储库中。

(作为附带说明,如果您是Git的新手,建议您使用git fetch,然后使用git merge而不是git pullgit pull实际上是git fetch,然后是git fetch,但分开进行操作可以更好地控制潜在的冲突。)

Bruno answered 2020-06-18T07:51:08Z
7 votes

一个拉取请求正在一些更改中请求存储库的维护者到git(顾名思义,是这样)。 GitHub提供了另一个易于使用的界面,可简化此类请求的审核。
您不需要使用它来合并到某个分支中。 但是您可以使用它,重新检查所有更改是否准备好合并可能会有所帮助。 如果您不希望或不需要额外的安全保护,则只需git request-pull分支机构即可。


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(-)
TimWolla answered 2020-06-18T07:51:38Z
0 votes

吉特拉

远程仓库======>本地仓库

git pull = Git提取+ Git合并

拉取请求

这是Github的事情。

远程Github存储库<========从您的Github存储库中拉出请求

远程github存储库的维护者是否愿意接受您的请求。

Asif answered 2020-06-18T07:52:24Z
translate from https://stackoverflow.com:/questions/22585407/git-pull-vs-pull-request