Pull Request

● 什么是 Pull Request

首先我们来理解什么是 Pull Request A 。Pull Request 是自己修改源代码后,请求对方仓库采纳该修改时采取的一种行为。

● Fork

各位请访问仓库页面,点击 Fork 按钮创建自己的仓库(图 6.2)。
新建的仓库名为“自己的账户名 /first-pr”。在这里我们命名为
hirocastest。

● clone

clone 仓库所需的访问信息显示在右侧的中央部分,让我们将它复制下来,把这个仓库 clone 到当前的开发环境中。
$ git clone [email protected]:hirocastest/first-pr.git
Cloning into ‘first-pr‘...
remote: Counting objects: 14, done.
remote: Compressing objects: 100% (12/12), done.
remote: Total 14 (delta 2), reused 0 (delta 0)
Receiving objects: 100% (14/14), 24.05 KiB, done.
Resolving deltas: 100% (2/2), done.
$ cd first-pr

● branch 

为何要在特性分支中进行作业
当前 Git 的主流开发模式都会使用特性分支。关于特性分支的详细
知识,我们已经在第 4 章讲解过了。
各位请养成创建特性分支后再修改代码的好习惯。在 GitHub 上发
送 Pull Request 时,一般都是发送特性分支。这样一来,Pull Request 就
拥有了更明确的特性(主题)。让对方了解自己修改代码的意图,有助
于提高代码审查的效率。

确认分支

我们来查看一下 clone 出的仓库的分支。
$ git branch -a
* gh-pages ←当前分支
remotes/origin/HEAD -> origin/gh-pages
remotes/origin/gh-pages

创建特性分支

我们创建一个名为 work 的分支,用来发送 Pull Request。这个 work
分支就是这次的特性分支。现在创建 work 分支并自动切换。
$ git checkout -b work gh-pages
Switched to a new branch ‘work‘

确认是否切换到了 work 分支下。

$ git branch -a
gh-pages
* work ←当前分支
remotes/origin/HEAD -> origin/gh-pages
remotes/origin/gh-pages

● 添加代码

用编辑器打开 index.html 文件,以 HTML 形式添加感想。
省略
<p>请写明这是对本书内容的实践或描述对本书的感想并发送Pull Request。</p>
↓追加的行
<p class="impression"> 这本书读着很有趣。(@HIROCASTER)</p>
省略
请自由添加感想并用 p 标签(Tag)括起,然后关闭编辑器。

● 提交修改

用 git diff命令查看修改是否已经正确进行。
$ git diff
diff --git a/index.html b/index.html
index f2034b3..91b8ecb 100644
--- a/index.html
+++ b/index.html
@@ -39,6 +39,8 @@
<p>请写明这是对本书内容的实践或描述对本书的感想并发送Pull Request。</p>
+<p class="impression"> 这本书读着很有趣。(@HIROCASTER)</p>

● 创建远程分支

要从 GitHub 发送 Pull Request,GitHub 端的仓库中必须有一个包
含了修改后代码的分支。我们现在就来创建本地 work 分支的相应远程
分支。

$ git push origin work
Counting objects: 5, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (3/3), done.
Writing objects: 100% (3/3), 353 bytes, done.
Total 3 (delta 2), reused 0 (delta 0)
To [email protected]:hirocastest/first-pr.git
* [new branch] work -> work

请打开 GitHub 的“用户名 /first-pr”页,确认 work 分支是否被创
建,以及是否已包含我们添加的代码。

登录 GitHub 并切换至 work 分支。

点击分支名左侧的
绿色按钮,会跳转至查看分支间差别的页面(图 6.4)。请在这里通过差

别查看刚刚进行的更改是否正确。这里显示的东西就是我们本次 Pull
Request 中包含的提交

确认想要发送的 Pull Request 的内容差别无误后,请点击 Create Pull Request。

随后显示的表单用于填写请求对方采纳的评论(图 6.5)。现在

让我们在评论栏中简明扼要地描述本次进行 Pull Request 的理由。

● 明确标出“正在开发过程中

”为防止开发到一半的 Pull Request 被误合并,一般都会像图 6.7 中所
示的那样在标题前加上“[WIP]”字样。WIP 是 Work In Progress 的简
写,表示仍在开发过程中。等所有功能都实现之后,再消去这个前缀。

● 不进行 Fork 直接从分支发送 Pull Request

这个方法也值得在 GitHub 上进行开发的团队借鉴。
一般说来,在 GitHub 上修改对方的代码时,需要先将仓库 Fork 到
本地,然后再修改代码,发送 Pull Request。但是,如果用户对该仓库有
编辑权限,则可以直接创建分支,从分支发送 Pull Request。利用这一设
计,团队开发时不妨为每一名成员赋予编辑权限,免去 Fork 仓库的麻
烦。这样,成员在有需要时就可以创建自己的分支,然后直接向 master
分支等发送 Pull Request。
其实,这一方法已经被 GitHub 实际运用到开发之中
A 。关于这一开
发流程的具体内容将在第 9 章详细说明。

原文地址:https://www.cnblogs.com/xyyhcn/p/11672453.html

时间: 2024-10-09 01:13:32

Pull Request的相关文章

github的pull request是指什么意思

有一个仓库,叫Repo A.你如果要往里贡献代码,首先要Fork这个Repo,于是在你的Github账号下有了一个Repo A2,.然后你在这个A2下工作,Commit,push等.然后你希望原始仓库Repo A合并你的工作,你可以在Github上发起一个Pull Request,意思是请求Repo A的所有者从你的A2合并分支.如果被审核通过并正式合并,这样你就为项目A做贡献了

使用 VisualCode + iTerm2 提交github的Pull Request

VisualCode集成github功能,是程序猿参与开源项目的利器.相比Sublime简单了很多(插件安装繁琐,比如你试试在Sublime2 安装gosublime,这里有坑; Sublime 3修复了Package Control的Bug).总之,有大牛Eric Gramma负责的项目值得信赖,主要差别是生产效率上面. 对VisualCode还不是特别熟悉,今天使用一种混合模式进行github开源项目开发-即使用iTerm2终端clone项目,在VisualCode进行编辑和提交,在gith

git 上的pull request 是什么意思?

1.git 上有常见的pull request 功能 2.pull request 的含义 解释一: 有一个仓库,叫Repo A.你如果要往里贡献代码,首先要Fork这个Repo,于是在你的Github账号下有了一个Repo A2. 然后你在这个A2下工作,Commit,push等.然后你希望原始仓库Repo A合并你的工作,你可以在Github上发起一个Pull Request,意思是请求Repo A的所有者从你的A2合并分支. 如果被审核通过并正式合并,这样你就为项目A做贡献了. 解释二:

Git - Pull Request工作流

Pull Requests是Bitbucket上方便开发者之间协作的功能.提供了一个用户友好的Web界面,在集成提交的变更到正式项目前可以对变更进行讨论. 开发者向团队成员通知功能开发已经完成,Pull Requests是最简单的用法.开发者完成功能开发后,通过Bitbucket账号发起一个Pull Request.这样让涉及这个功能的所有人知道,要去做Code Review和合并到master分支. 但是,Pull Request远不止一个简单的通知,而是为讨论提交的功能的一个专门论坛.如果变

dragloader.js帮助你在页面原生滚动下实现Pull Request操作

dragloader.js是一个面向移动Web开发的JavaScript库,帮助开发者在使用页面原生滚动时,模拟上/下拉手势,实现Pull Request操作. 在移动设备上,一般会使用 drag down 手势实现加载最新 使用 drag up 手势实现加载更多 dragloader样例需运行在 Smart Phone/Pad 上,扫描二维码: Note:目前dragloader.js在iOS下运行不是很稳定,上拉操作会有闪跳现象,Android下表现正常.

git pull request

如何发 PR 以下以 wiki-pages 为例 把项目 fork 到自己名下,然后 clone 到本地 git clone [email protected]:yexiliang/wiki-pages.git 将原始项目加为上游 git remote add upstream [email protected]:op/wiki-pages.git 在本地项目建立分支并切换到该分支 git checkout -b dev 在 dev 分支上开发,提交 touch foo.txt git add

AndroidStudio中使用Git-高级篇(二)——新建分支(branch)和拉取请求(Pull request) (by 星空武哥)

转载请标注来源:http://blog.csdn.net/lsyz0021/article/details/51842774 AndroidStudio中使用Git-初级篇(一)--从github上传和下载项目 AndroidStudio中使用Git-高级篇(二)--新建分支(branch)和拉取请求(Pull request) 前段时间写过一篇文章介绍如何在AndroidStudio使用上传项目到github,今天接着给大家带来了他的高级篇--新建分支(branch)和拉取请求(Pull re

(转载)新手如何正确理解GitHub中“PR(pull request)”中的意思

我从知乎看到的两个答案,分别从实际意义以及语言学角度告诉你改怎么理解PR,很简洁,这个理解非常棒,会解决新手刚看到PR(pull request)这个词时的困惑. 实际意义: 有一个仓库,叫Repo A.你如果要往里贡献代码,首先要Fork这个Repo,于是在你的Github账号下有了一个Repo A2,.然后你在这个A2下工作,Commit,push等.然后你希望原始仓库Repo A合并你的工作,你可以在Github上发起一个Pull Request,意思是请求Repo A的所有者从你的A2合

pull request的一些思考

 由于是团队使用的是PR工作模式,一般一个issue或者bug没有处理完成,是不能Pull Request的,只能在自己的仓库上commit和push, 完成了以后再向主仓库的相关分支发送PR,之后由测试人员在测试机上fetch PR主仓库中的PR,进行测试,测试完毕通过之后才合并PR到主仓库的主分支上. PR的工作模式是优秀的开源软件工作模式的代表,能给开源项目发送PR,当你的PR被开源项目作者合并那是一件很开心的事.  最近开了一个新分支来开发一个大功能,让我很头疼的是在埋头开发时,没开发完

github 修改fork的代码之后如何提交代码并pull request

官方的解释还是有点模糊,我是参照这篇文章来的. http://www.linuxidc.com/Linux/2012-12/76922.htm 关于Git的版本管理的原理,我是从这篇文章里面学习的. http://wenku.baidu.com/view/78898a1fa76e58fafab00377.html 下面我来总结一下如何在github上面将他人的项目拷贝到自己的本地,修改代码之后重新上传到自己的项目主页,同时通知原项目开发者. 1.安装git工具 [plain] view plai