jsc*_*sse 8 git version-control github pull-request
是什么git request-pull
,它是如何比较制作pull request
,例如在GitHub上?
1.它应该如何使用?
2.可以代替pull request吗(比如在github上)?
3.使用它有什么好处?
该git request-pull
命令早于托管服务。正如评论中所指出的,它适用于倾向于包括运行git format-patch
和git send-email
通过电子邮件传递补丁的工作流。一旦补丁经过测试和批准,补丁生成器可能会在他们或他们公司提供的公共服务器上访问提交,并向项目维护者发送最终的电子邮件消息,宣布他们已经清理、重新定位、等,准备合并的项目主题。
例如,假设一个名叫 Phil Systeme 的人有一个文件系统的 Linux 内核补丁。他有一个 Linux 内核树的克隆,从一些 Linux 版本开始。他的补丁包括对十几个文件的一次巨大提交,他将这些文件发送到文件系统维护列表,主题行如下:
PATCH: make the foo file system better
Run Code Online (Sandbox Code Playgroud)
文件系统维护邮件列表上的反馈首先说:将其分成至少六个较小的部分。Phil Systeme 将他的 Phile System 补丁分解为八个逻辑上较小的补丁,每个补丁都做一些有用的事情并且仍在构建。这次他发出了9条消息:
[PATCH v2 0/8]: make the foo file system better
(description of what the patch series is about)
[PATCH v2 1/8]: split up the xyzzy function
As a prerequisite for improving the foo file system, break
a large function into several smaller ones that each do one
thing. We'll use this later to work better and add new features.
[PATCH v2 2/8]: ...
Run Code Online (Sandbox Code Playgroud)
这一次,他得到反馈说它看起来更好,但他忘记说明 ARM cpu 需要一个特殊的东西而 MIPS CPU 需要不同的特殊东西。所以他发出第三轮[PATCH v3 m/n]
消息,依此类推。
最终,文件系统维护副官同意应该加入这个补丁。现在 Phil 或副官将通过电子邮件发送的补丁转换为实际的 Git 提交,应用于当前的开发内核,或维护内核,或其他任何东西。在这一点上,Linus Torvalds 足够信任这个人,这个人可以说:“这是一个 Git 存储库,其中包含您应该添加到内核中的新提交。” 然后,Linus 可以git pull
直接从这个其他存储库中,或者更有可能git fetch
从那里决定是否以及如何合并它们,或者是否侮辱这个人。:-)
像 GitHub 和 Bitbucket 这样的托管服务声称、感觉或任何你喜欢的动词在这里,他们的“拉取请求”机制优于所有这些电子邮件。在某些方面,它很明显是;但是他们对隐藏实际提交图的热情,如果你要使用真正的合并,这真的很重要,对我来说有点神秘。
归档时间: |
|
查看次数: |
4178 次 |
最近记录: |