从零到 PR

vcjmhg 的个人博客 自律者自由 本文由博客端 https://www.vcjmhg.top 主动推送

概述

Github 作为程序员最大交友社区,想必每个程序员都不陌生。发起一个 PR 应该是无数 GitHub 初学者的一个小心愿。下边就一步一步来讲述从零到 PR 的整个过程,希望能给初学者以所得。

点个 Star

某日,程序员小吴闲来无事,在 Github 上闲逛,突然遇到了 Test,一见钟情。准备搭个讪,认识一下于是点了个 Star

image.png

此处的 Star:点赞

Star 之后的项目我们可以个人中心的 Your stars 中查看

image.png

发起 Issue

小吴在使用 Test 项目过程发现 Test 项目比较实用,但是也发现了不足,比如没有 README.md 项目自述文件,因此小吴想给该项目加上自述文件,因此他发起了一个 issue 进行讨论,征求开发者意见。

image.png

此处的 issue:问题,一般情况如果感觉在使用该项目过程中遇到问题或者有更好的 idea 都可以发起 issue 来进行讨论。

一般来说如果项目维护者看到你的 issue 之后会进行回应,讨论可行的解决方案

image.png

github 进行交流的过程中,我们常常会遇到下边这些用语,便于大家查看,整理如下图表:

名称 含义 中文含义
WIP Work in progress, do not merge yet 出现在 PR 的标题中,用于提示审核人,项目正在开发中暂时不要合并
LGTM Looks good to me 表示对提交者的赞许,鼓励他更多的参与贡献。
cc Carbon copy 表示抄送的意思,希望某人也能收到,了解相关信息,通过 cc 后续的 @ At 出对应的成员,他可以再自己的通知中收到相关信息。
TL;DR Too Long; Didn't Read. 太长懒得看。也有很多文档在做简略描述之前会写这么一句
PTAL Please take a look. 帮我看下,一般都是请别人 review 自己的 PR
DNM Do not merge 不要合并
ACK acknowledgement 我确认了或者我接受了,我承认了
NACK/NAK negative acknowledgement. 我不同意

进行 PR

得到回应之后,小吴便可以开始尝试 Fork 一个分支在本地进行开发。

image.png

此处 Fork:开分支,由于本身小吴没有权限直接操作 Test 的仓库,因此他需要先将 Test 项目在自己账号下边建立起一个分支。在自己的分支下进行功能开发。

小吴接下来创建项目自述文件 README.md 并进行编辑

image.png

编辑完成后,发起 PR

image.png

此处 PR:全程 Pull Request,合并拉取请求,用以发起将自己的分支合并到主干分支的请求,请求对方将你的代码 Merge 到他的主干分支。

分支合并

项目维护者在查看提交信息后如果满足要求则会进行分支合并。合并完成之后此次 PR 便完成了。

image.png

然后再 Test 项目中的 Contributors 中看到 vcjmhg 的大名 😄

image.png

至此一次 PR 便完成。

小结

希望大家在使用 Github 项目时,要勇敢的发起 Issue,这至少是迈向开源的第一步。可能有时我们会感觉自己水平很菜,但其实每个人都是从菜鸟到大牛逐步迈进的。

我总是告诫自己:“虽然我很菜,但我也要菜出特色。”

分享此处与君共勉!!

  • GitHub

    GitHub 于 2008 年上线,目前,除了 Git 代码仓库托管及基本的 Web 管理界面以外,还提供了订阅、讨论组、文本渲染、在线文件编辑器、协作图谱(报表)、代码片段分享(Gist)等功能。正因为这些功能所提供的便利,又经过长期的积累,GitHub 的用户活跃度很高,在开源世界里享有深远的声望,并形成了社交化编程文化(Social Coding)。

    165 引用 • 1786 回帖 • 401 关注
  • 工具

    子曰:“工欲善其事,必先利其器。”

    176 引用 • 496 回帖 • 3 关注
  • 教程
    119 引用 • 415 回帖 • 5 关注

赞助商 我要投放

6 回帖
请输入回帖内容 ...
  • qloog

    菜到一定境界就是大牛~

    1 回复
  • adlered 1

    666

  • ghostsf

    👍

  • GumKey

    菜刀一定境界,大佬看到你的问题,都开始怀疑自己

  • Vanessa 2 3 赞同

    10 年前有人提 issue,我会觉得他在鸡蛋里面挑骨头。

    可现在我会非常感激,几天不收到 issue,心里面就很觉得我的项目是不是要被大家放弃了。我相信很多项目的作者都会感激提 issue 的人。

    1 回复
  • ghostsf

    哈哈哈哈哈哈

请输入回帖内容 ...