|
|
51CTO旗下网站
|
|
移动端

如何在Github上创建一个拉取请求

你知道如何使用 git 了,你有一个 GitHub 仓库并且可以向它推送。这一切都很好。但是你如何为他人的 GitHub 项目做出贡献? 这是我在学习 git 和 GitHub 之后想知道的。在本文中,我将解释如何复刻一个 git 仓库、进行更改并提交一个拉取请求。

作者:Kedar Vijay Kulkarni来源:Linux中国|2019-08-12 13:45

 如何在Github上创建一个拉取请求

学习如何复刻一个仓库,进行更改,并要求维护人员审查并合并它。

你知道如何使用 git 了,你有一个 GitHub 仓库并且可以向它推送。这一切都很好。但是你如何为他人的 GitHub 项目做出贡献? 这是我在学习 git 和 GitHub 之后想知道的。在本文中,我将解释如何复刻fork一个 git 仓库、进行更改并提交一个拉取请求pull request

当你想要在一个 GitHub 项目上工作时,第一步是复刻一个仓库。

Forking a GitHub repo

Forking a GitHub repo

你可以使用我的演示仓库试一试。

当你在这个页面时,单击右上角的 “Fork”(复刻)按钮。这将在你的 GitHub 用户账户下创建我的演示仓库的一个新副本,其 URL 如下:

  1. https://github.com/<你的用户名>/demo

这个副本包含了原始仓库中的所有代码、分支和提交。

接下来,打开你计算机上的终端并运行命令来克隆clone仓库:

  1. git clone https://github.com/<你的用户名>/demo

一旦仓库被克隆后,你需要做两件事:

1、通过发出命令创建一个新分支 new_branch

  1. git checkout -b new_branch

2、使用以下命令为上游仓库创建一个新的远程remote

  1. git remote add upstream https://github.com/kedark3/demo

在这种情况下,“上游仓库”指的是你创建复刻来自的原始仓库。

现在你可以更改代码了。以下代码创建一个新分支,进行任意更改,并将其推送到 new_branch 分支:

  1. $ git checkout -b new_branch
  2. Switched to a new branch new_branch
  3. $ echo some test file &gt; test
  4. $ cat test
  5. Some test file
  6. $ git status
  7. On branch new_branch
  8. No commits yet
  9. Untracked files:
  10.   (use "git add &lt;file&gt;..." to include in what will be committed)
  11.     test
  12. nothing added to commit but untracked files present (use "git add" to track)
  13. $ git add test
  14. $ git commit -S -m "Adding a test file to new_branch"
  15. [new_branch (root-commit) 4265ec8] Adding a test file to new_branch
  16.  1 file changed, 1 insertion(+)
  17.  create mode 100644 test
  18. $ git push -u origin new_branch
  19. Enumerating objects: 3, done.
  20. Counting objects: 100% (3/3), done.
  21. Writing objects: 100% (3/3), 918 bytes | 918.00 KiB/s, done.
  22. Total 3 (delta 0), reused 0 (delta 0)
  23. Remote: Create a pull request for new_branch on GitHub by visiting:
  24. Remote:   <http://github.com/example/Demo/pull/new/new\_branch>
  25. Remote:
  26.  * [new branch]         new_branch -&gt; new_branch

一旦你将更改推送到您的仓库后, “Compare & pull request”(比较和拉取请求)按钮将出现在GitHub。

GitHub's Compare & Pull Request button

GitHub's Compare & Pull Request button

单击它,你将进入此屏幕:

GitHub's Open pull request button

GitHub's Open pull request button

单击 “Create pull request”(创建拉取请求)按钮打开一个拉取请求。这将允许仓库的维护者们审查你的贡献。然后,如果你的贡献是没问题的,他们可以合并它,或者他们可能会要求你做一些改变。

精简版

总之,如果您想为一个项目做出贡献,最简单的方法是:

  1. 找到您想要贡献的项目
  2. 复刻它
  3. 将其克隆到你的本地系统
  4. 建立一个新的分支
  5. 进行你的更改
  6. 将其推送回你的仓库
  7. 单击 “Compare & pull request”(比较和拉取请求)按钮
  8. 单击 “Create pull request”(创建拉取请求)以打开一个新的拉取请求

如果审阅者要求更改,请重复步骤 5 和 6,为你的拉取请求添加更多提交。

快乐编码!

【编辑推荐】

  1. 21个必知的机器学习开源工具,涵盖5大领域
  2. 比Spark快100倍的GPU加速SQL引擎!BlazingSQL开源了
  3. 中国首个开源协议诞生,比 Apache License 友好
  4. 开发中必须要掌握的Git技巧
  5. 华为「鲲鹏」硬软件重大开源!这大概是华为第一次大规模开源
【责任编辑:庞桂玉 TEL:(010)68476606】

点赞 0
分享:
大家都在看
猜你喜欢

订阅专栏+更多

16招轻松掌握PPT技巧

16招轻松掌握PPT技巧

GET职场加薪技能
共16章 | 晒书包

348人订阅学习

20个局域网建设改造案例

20个局域网建设改造案例

网络搭建技巧
共20章 | 捷哥CCIE

723人订阅学习

WOT2019全球人工智能技术峰会

WOT2019全球人工智能技术峰会

通用技术、应用领域、企业赋能三大章节,13大技术专场,60+国内外一线人工智能精英大咖站台,分享人工智能的平台工具、算法模型、语音视觉等技术主题,助力人工智能落地。
共50章 | WOT峰会

0人订阅学习

读 书 +更多

Java程序设计专家门诊

精选目前国内外最流行的程序设计语言——Java作为本书的选题,并以丰富的内容来解决读者学习该语言时可能遇到的各种问题。以专业的论坛为基...

订阅51CTO邮刊

点击这里查看样刊

订阅51CTO邮刊

51CTO服务号

51CTO播客