https://stackoverflow.com/questions/21657430/why-is-a-git-pull-request-not-called-a-push-request
我看了这里面的解释,感觉还是不够有说服力啊
我的理解是:我做了一些修改,我请求把我的修改 push 到你的仓库,然后你 review 一下我的代码,如果没问题就接受请求 merge,这样的话叫做 push request 岂不是更合适?因为这个操作是我主动发起的。pull 是仓库主向我 fork 的仓库发起的操作,那么 pull request 这种操作应该是要上游仓库主来向我发起啊,而不是我主动让上游仓库主来 pull 我仓库中的代码。
1
1stlulu 2017-06-20 00:57:30 +08:00 via iPhone 8
一句话
楼主不能把自己的改动 push 到别人的 repo 里,因为没有权限,所以要有权限的人把您的改动 pull 到自己 repo 里。 |
2
FrankFang128 2017-06-20 00:58:35 +08:00 6
Please pull me ~~~~(>_<)~~~~
所以是 pull request |
3
cxbig 2017-06-20 01:01:04 +08:00
合并是 merge
pull 是从远程拉回本地,push 是把本地推送到远程,感受一下这两个动作的方向 如果你拉下来的 branch 和本地 working branch 不一致,pull 同时实现了 merge 功能而已 |
4
cxbig 2017-06-20 01:13:12 +08:00
至于 Pull Request,是当你没有权限 merge 到该分支的时候提出的申请
这个动作可以是同 repo 的 develop 到 master,或者你 fork 的项目 到原项目 操作是对方确认,那么站在对方的角度,这个动作是从你的分支 pull 到他的分支 |
5
hwding 2017-06-20 01:17:34 +08:00
可以理解成来自 pull 的 request 吧,我是这么想的。
|
6
shoaly 2017-06-20 05:57:49 +08:00
因为 pull request 后续操作就是 pull, 所以这是一个 pull 的 request
|
7
goool 2017-06-20 06:14:21 +08:00 5
叫 "pull request" 确实不那么直观,因为有个视角转换。
gitlab.com 把这个动作叫做 "merge request" 是更好的选择。 pull 只描述了仓库主人收到你的请求后采取的第一个动作,而 merge 描述了整个请求与受理的结果。 |
8
21grams 2017-06-20 07:52:42 +08:00 via Android
同意楼上,明显 merge request 更合理,更容易理解,我开始用 github 的时候,这个 pull request 让我迷惑了好久。
|
9
paulagent 2017-06-20 07:58:42 +08:00
一楼解释的很清楚了。主要是个角度问题
|
10
Biwood 2017-06-20 08:24:38 +08:00 2
“我做了一些修改,我请求把我的修改 push 到你的仓库”,你是认真的?你参与别人的项目时不都是先 fork 一下,仓库 copy 一份到你自己名下了,你只能往自己的仓库 push,怎么 push 到别人的仓库了?要是人人都能 push 到别人的仓库,那原仓库所有者不得疯了。
"pull request"的意思是:请求目标仓库管理者 pull 我的仓库里的代码。主动权在目标仓库那里。 pull = fetch + merge,先获取你仓库里的代码,再合并你的改动,完全符合逻辑。 |
11
gimp 2017-06-20 08:29:45 +08:00
1 2 L 解释的挺明白
如果叫 merge request 就更好了 |
12
SharkIng 2017-06-20 09:18:29 +08:00
request 是请求被给或者被做,“ the act of asking for something to be given or done ” 说白了就是你请求别人干什么
你能请求别人 push 么?肯定不符合逻辑,像 1L 和 2L 说的。所以你只能请求别人 pull 你的 code。或者当然说成 merge 也可以,但是有时候 pull 并不代表 merge |
13
0asis 2017-06-20 09:27:59 +08:00 via iPhone
我 boss 教我用 git 的时候一直说的就是 merge request
|
14
felinx 2017-06-20 10:19:35 +08:00
不是你想 push 就能 push,也不是每个 push 都值得 push,不然岂不是乱套。
所以 push 没权限和全力,只能“求”人 pull |
15
SourceMan 2017-06-20 10:20:38 +08:00
你看看 gitlab 的 merge request 结合看看是不是好理解了
|
16
shihty5 2017-06-20 10:40:25 +08:00
前面的回答很好 没必要叫 Merge Request
因为 Pull = Fetch + Merge 看看啥东西 + 合并到我的仓库 |
18
mooncakejs 2017-06-20 10:46:47 +08:00
本意是 please pull my branch and merge to your resp.
|
19
blackjar 2017-06-20 11:27:32 +08:00
按照 gitlab 的叫 merge request 最好 pull request 容易误导
|
20
cevincheung 2017-06-20 11:33:41 +08:00
反过来 request pull 还好理解点。
|
21
laoyur 2017-06-20 12:10:07 +08:00
send a request for pulling my code ==> send pull request ==> Pull Request
|
22
msg7086 2017-06-20 12:38:29 +08:00
「我做了一些修改,我请求把我的修改 push 到你的仓库」
这叫做 Merge Request,不是 Pull Request,你看的不是一个东西。 |