当前位置: 首页 > 科技观察

开始学习GitHub系列《GitHub上的常用操作》

时间:2023-03-19 10:28:57 科技观察

之前写过一个GitHub系列,反响很好。突然发现还有东西要写。GitHub前段时间也改版了。借此机会补充一下。大家都说开源社区最大的魅力在于人人都可以参与进来,利用大家的力量让一个项目变得更加完善和强大。那么肯定有人会有疑问。我没有开源项目的能力,但我想参与其他开源项目。我应该怎么做?那么今天就来介绍一下GitHub上的一些常用操作。完成后您就会知道如何操作。我们以Square开源的Retrofit为例。打开链接:https://github.com/square/retrofit可以看到如下项目主页:可以看到一个项目可以进行的操作主要有两部分,***部分包括Watch、Star、Fork、这三个系列操作前面都有介绍,这里不再赘述。我们专注于第二部分,包括代码、问题、拉取请求、项目、Wiki、Pulse和图表。接下来,我们一一说明。代码很容易理解。它只是您项目的代码文件。这里说明一下,一般每个项目都有项目介绍。你只需要在项目的根目录下添加一个README.md文件,使用markdown语法。GitHub自动呈现此文件。IssuesIssues代表项目的一些问题或bug。这并不意味着问题越少越好。解决的Issues越多,项目作者或组织越活跃,开源项目作者对项目的重视程度越高。我们来看看Retrofit的Issues主页。截至目前,1305个问题已关闭(已解决),37个未解决(待解决)。解决问题的比例和速度,值得每一位开源项目的作者学习。同样,当你在使用一些开源项目时遇到问题,你可以提出Issue。您可以点击右上角的新建Issue创建一个新的Issue。您只需要添加标题和描述。这个操作非常简单。Pullrequests我们都知道GitHub最大的魅力在于人人都可以参与。比如别人开源了一个项目,我们每个人都可以参与开发,共同改进,这就是通过Pullrequests,简称PR。这个在Retrofit中是无法演示的,所以我会用我自己在GitHub上的项目9GAG来给大家详细介绍一下如何给一个项目发起PR:事先一定要保证可以正常提交代码到GitHub,如果不能的话可以,请看我之前的系列文章。第一步是登录你的GitHub账号,然后找到你要发起PR的项目,这里以[9GAG](https://github.com/stormzhang/9GAG)为例,点击Fork按钮在右上角,然后该项目就会出现在你自己账号的Repository中。请注意,该项目最初属于GitHub帐户stormzhang。出于演示目的,我重新注册了另一个名为googdev的帐户,仅供演示之用。fork之后googdev账号下多了一个9GAG项目。截图如下:可以看到fork的项目标题下方会显示一行小字:forkfromstormzhang/9GAG。另外,项目代码与原项目完全一致。对于原来的项目来说,相当于别人新建了一个分支。第二步,将项目clone到本地,然后修改bug或者增加新的功能。简而言之,开发您所做的代码更改并保存它们。为了演示方便,我只在原项目的README.md文件中添加了一行文字:Forkfromstormzhang!然后,将您所做的代码更改推送到您自己的GitHub。相信看过我之前教程的同学应该能做到这一步,如果不会,可以回去看之前的教程。第三步,点击你fork过来的项目首页的Pullrequests页面,点击Newpullrequest按钮,然后进入如下页面:该页面会自动比较项目与原项目的差异,并最上面的语句是stormzhang/比较9GAG项目的master分支和你fork的googdev/9GAG项目的master分支。然后在顶部,你可以很方便直观的看到代码做了哪些改动。大家也可以看到我刚刚加了一句forkfromstormzhang!同样的,我写好了标题和描述,然后我们点击了中间的Createpullrequest按钮,至此我们就成功的向项目提交了一个PR。然后等待项目原作者审核你的代码,决定是否接受你的PR。如果你接受了,那么恭喜你,你已经是项目的贡献者之一了。Projects是***GitHub修订版中新增的项目。该项目方便您对一些Issues和Pullrequests进行分类。反正我觉得这个功能很鸡肋。至少到目前为止还没有人使用过这个功能。请理解就好了。Wiki一般来说,我们的项目主页README.me基本够用了,但有时我们项目的一些用法很复杂,需要开源项目的用户有详细的说明文档。这时候就用到了Wiki。使用起来也很简单,直接NewPage,然后用markdown语法来写。PulsePulse可以理解为项目的活跃总结。包括仓库最近创建了多少个PullRequests或Issues,有多少人参与了这个仓库的开发等等,在这里一目了然。根据这个页面,用户可以判断项目的关注程度,以及项目作者是否还在积极参与解决这些问题。GraphsGraphs就是用图表的形式展示项目的整体情况。比如项目的所有贡献者,比如commit的范围分析,比如某天的代码提交频率等等。Settings如果一个项目是你自己的,那么你会发现会多一个菜单Settings,包括你对整个项目的设置信息,比如重命名项目,比如删除项目,比如关闭项目的Wiki和Issues功能等。但是大多数情况下我们不需要做改动到这些设置。有兴趣的可以看看这里设置的功能。以上包含了一个GitHub项目的所有操作。相信看完之后,你对GitHub上的一些常用操作已经熟悉了。从现在开始,请一起参与开源社区。开源社区需要我们每个人都做出贡献。努力,让开源社区越来越强大,才能帮助到更多的人!【本文为专栏作者“stormzhang”原创稿件,转载请联系原作者(微信ID:googdev)】