开源趣事~ 记给 OpenHarmony 提 PR 的那些事

大家好哇,许久不见,也感谢大家这么久一直以来的关注,也感谢在短视频盛行的今天,你们还能静下心来坚守文字的阵地。

说到这次的主题,参加鸿蒙项目的开源,也是小编第一次拥抱开源,就像是别人有困难,然后给予帮助的那种快乐感。之前也了解过开源,曾得到过某位大佬赠予的开源书籍,但是一直止于实践,经过这次开源项目的实践后我想以后有类似的项目还会继续参加。

可能有人会觉得参加开源并不会得到什么,毕竟为爱发电这种事还是很少有人去做。可当我们真正去参与到其中的时候,就会发现原来这个团体有这么多小伙伴,大家在一起可以互相学习交流,可以一起探索新的知识,在开源的这个团体中可以让我们学得更多。

接下来小编将会带大家认识提 Bug 的大致流程。

**

一、准备工作

**

可能会有小伙伴不知道提 PR(Pull Requests)是啥,简单来说,就是拉取(forked)一个代码仓库,然后 clone 到本地查找错误,然后通过 Git 把这个经过修改的仓库 push 上去。push 上去后就需要提交 PR 给这个开源项目的管理者,PR 中包括了找到的什么错误,对项目有什么影响等等,随后会有相关的进行查阅编译,在提交 PR 的时候可能会需要提一个 Issues。

那么首先需要我们下载一个 Git,相关步骤:用Hexo+Github Pages搭建私人博客(第二站)

当我们下载完 Git 后暂时不做相关的配置。

这里以小编提交两次 PR 为例,第一次是在 Docs 仓提交的轻量级 PR,简单来说就是简单的修改你觉得文档中有什么表达不好或者有语法错误的地方;第二次是修改了部分源代码。

To:主要会讲到在提交时踩过的坑~

二、轻量级 PR 提交

1.首先我们找到 OpenHarmony 的开源仓库:

https://gitee.com/openharmony

2.找到如下页面中的 docs 仓库,点击进去:
在这里插入图片描述
3.在 docs 仓库里面的右上角找到 Forked,选择你的账号并确认,如下:
在这里插入图片描述
To:此步骤好比是将 docs 仓库复制粘贴到你自己账号下面。

4.等待刷新后会进入到我们的 docs 仓库,接下来就是我们去相关文档查看有没有需要修改的地方:
在这里插入图片描述
To:比如这里小编一直点击到 docs 仓库的 zh-cn/design/API-Review-Template.md 目录下。

5.在文档下标题上面的一框中找到编辑,进入编辑页面即可使用 markdown 语法进行修改:
在这里插入图片描述
修改完成后,我们将页面滑到最下面,在扩展信息中可填写修改的理由,并在最后加上:Signed-off-by: Gitee 用户名 <邮箱>

然后我们点提交即可。

返回到 Gitee 的 docs 仓库下便可以看到我们提交了一个修改内容,那么我们既然要把这个内容修改到开源的远程仓库里面,就需要提交一个 PR 到远程仓库,即合并修改的内容。
在这里插入图片描述
如上图,我们找到 Pull Requests,然后再找到新建 Pull Request,点击进去后会进入到一个填写信息的页面,如下,首先要填写的是标题,在下面的框框内大概描述一下修改的说明,填写完后点击下面的创建 Pull Request 即可。
在这里插入图片描述
进入后我们会进入一个页面,下面可以看到有评论的地方,首先第一步我们可以先评论 start build 进行编译测试,这时我们会发现一个问题,它需要我们签署一个 DOC 协议,如下:
在这里插入图片描述
这种情况我们只需点击进去按照步骤来,随后评论 check dco 检查完后继续评论 start build 即可。

**

三、通过 Git 提交 PR

**

当我们有对源码进行修改然后提交 PR 时就需要通过 Git 这个分布式版本控制系统(能够实现本地版本控制),它可以快速、高效地处理项目版本管理。值得注意的是我们在管理项目时如果有多个账号就需要设置好用户名和邮箱,比如在设置邮箱时就需要注意是否添加–global,添加它就代表此用户名和邮箱为全局配置。在配置完后我们还需要将 Github 或者 Gitee 里面的公钥添加到我们的 Git 里面,相关内容在前面的博客设置中有使用到。

在设置好相关配置后,当我们把需要修改的代码仓 clone 下来后便是查找 Bug,关于查找 Bug 这里就不多展示了。

这里关于提交到仓库和之前博客提交到 Github 上是差不多的,主要是其中会遇到很多问题,小编这里把遇到的一些相关问题给大家展示出来,方便以后大家可以快速解决。

1.Clone 仓库时报错

当我们在 Git 上输入 git clone xxxx 时,发现报错如下:“fatal: Could not read from remote repository.”

首先需要排查的就是自己的账户以及 ssh 公钥有没有设置好。小编主要是之前配过 Github 上面的,然后在 Gitee 上面没有配置,所以会有报错。

2. gitBash did not match any file(s) known to git

这个报错主要可能有两个原因,第一个可能是在 commit 的时候使用的是单引号,这个在 Linux 系统是可行的,但是在 Windows 上只能使用双引号,当然这个报错也是最简单。

还有一个可能是分支问题,不过这个主要是我们管理之前的仓库时容易遇到的问题,在提交 PR 时可不考虑此问题,当然这也要我们去解决啦。

比如我们克隆了一个仓库,然后切换到 master 分支,但是在切换时就会提示上面的错误。

git checkout master

首先我们看一下分支情况:

git branch -a

如果没有找到我们想要的分支,则输入 git fetch 获取所有分支。然后切换到远程 master 分支,使用如下命令:

git checkout origin/mater//输出develop

此时也会报错,但不管它,我们继续运行命令:

git checkout -b master
git pull

此时也会报错,说明我们建立的 master 分支不能和远程的 master 分支建立联系。那么我们继续命令:、

git branch -u origin/master master
git pull
//输出:Already up-to-date.说明问题已解决

当然也有一些其他的小问题,但是最终在查资料的情况下也是可以解决的,加上现在 ChatGPT 出来了,对于我们解决问题的速度无疑是巨大的提升。

最后,这篇文章也是在去年暑假就打了草稿,由于一些原因并没有继续完成,这里也希望能够继续和大家一起分享。当时也是和另外一位大佬一起参与的开源项目,也感谢能够有他的指导。也感谢大家一直都在路上,我想不管风雨兼程,总有一天能够到达自己想要到达的终点!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/72224.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

基于大规模边缘计算的千万级聊天室技术实践

在技术的迭代更新下&#xff0c;面对大型、超大型的直播场景&#xff0c;大规模边缘聊天室成为新热潮。 作者 | 张超 责编 | 王子彧 出品 | CSDN&#xff08;ID&#xff1a;CSDNnews&#xff09; 当前直播成为一种流行趋势&#xff0c;带货直播&#xff0c;网红带货&#…

JavaScript成功背后的四个关键人物!

前言&#xff1a;JavaScript能如此成功&#xff0c;至少有四位关键人物&#xff1a; 1. JavaScript作者Brendan Eich 2. JSLint&#xff0c;JSON作者Douglas Crockford 3. jQuery作者John Resig 4. Node.js作者Ryan Dahl。 Brendan Eich以及JavaScript的发明过程大家已经非常熟…

爬虫教程( 3 ) --- 手机 APP 数据抓取

1. Fiddler 设置 这是使用 fiddler 进行手机 app 的抓包&#xff0c;也可以使用 Charles&#xff0c;burpSuite 等。。。 电脑安装 Fiddler&#xff0c;手机 和 安装 fiddler 的电脑处于同一个网络里&#xff0c; 否则手机不能把 HTTP 发送到 Fiddler 的机器上来。 配置 Fiddle…

以某乎为实战案例,教你用Python爬取手机App数据

1 前言 最近爬取的数据都是网页端&#xff0c;今天来教大家如何爬取手机端app数据&#xff08;本文以ios苹果手机为例&#xff0c;其实安卓跟ios差不多&#xff09;&#xff01; 本文将以『某乎』为实战案例&#xff0c;手把手教你从配置到代码一步一步的爬取App数据&#xff0…

利用Python爬虫抓取手机APP的传输数据

大多数APP里面返回的是json格式数据&#xff0c;或者一堆加密过的数据 。这里以超级课程表APP为例&#xff0c;抓取超级课程表里用户发的话题。 1、抓取APP数据包 表单&#xff1a; 表单中包括了用户名和密码&#xff0c;当然都是加密过了的&#xff0c;还有一个设备信息&am…

22. 听说你想要用爬虫采集我的手机号?哎 ~ 我展示用的是图片

本篇博客我们实现图片渲染手机号码案例,用于防止爬虫直接采集文字信息。 爬虫训练场 本案例实现的效果如下所示 文章目录 bootstrap5 实现名片样式卡片补充数据生成逻辑生成用户 5 个汉字的昵称调用头像 API,生成图片将手机号码生成图片bootstrap5 实现名片样式卡片 在 Boo…

一种解决Qobuz客户端一直转圈加载不出来的思路

先上图&#xff0c;Qobuz在Win10上的客户端是这样滴 之前是最高音质&#xff0c;换到最差音质还是加载不出来。可能是我网络的问题&#xff0c;但是代理节点是没问题的。然后我尝试了一下Qobuz的Web Player。 就是登录之后画红圈这个 秒开好吧&#xff0c;也不卡顿&#xff…

2022年注册会计师(CPA)考试测试题及答案

1、某外国投资者协议购买境内公司股东的股权,将境内公司变更为外商投资企业,该外商投资企业的注册资本为700万美元。根据外国投资者并购境内企业的有关规定,该外商投资企业的投资总额的上限是( )万美元。 A&#xff0e;1000 B&#xff0e;1400 C&#xff0e;1750 D…

【PMP】PMP考试练习题(中英文对照)

1. A company wants to ensure that project failures are addressed in project documentation. Where should the project manager include them? A. Project management plan B. Risk management plan C. Change management plan D. Communications management plan 公司希…

PMP通过率大跌,是否与新版考试大纲有关?

通过率的增长和下降并不是只看考试内容或者说考试是否有重大改革来的&#xff0c;毕竟每年的考生水平都是不一的&#xff0c;我们也没有办法去确定一个考试的通过率高低是否准确&#xff0c;你相信那就是&#xff0c;不相信同样对于你是否能过通过考试也没有多大影响。 考试并不…

超级好用『PMP考试答题24计』一次通过考试~(1)

作为一个想一次通过PMP考试的老考试人。 刷题、报班、看视频、看教材甚至是通过人的经验贴都不会放过的我&#xff0c;只要是与通过PMP考试有关的都想去看看了解了解&#xff0c;避避坑。 但是内容有太多&#xff0c;而且考试的经验也就只能看看&#xff0c;在自己身上好像没…

PMP中文报名注意事项

随着PMP得到越来越多的关注和认可&#xff0c;报考人数也在逐年快速增长着。 而PMP的考试&#xff0c;分为英文报名和中文报名。在PMI官网通过英文报名之后才能进行英文报名。 一般报了机构的学员&#xff0c;机构都会提供英文代报名服务。 而中文报名因为涉及预约考点&…

证券从业资格考试 超全指南

一、考试科目 分为一般从业资格考试、专项业务类资格考试和管理类资格考试三种情况。 一般从业资格考试&#xff0c;即“入门资格考试”&#xff0c;主要面向即将进入证券业从业的人员&#xff0c;具体测试考生是否具备证券从业人员执业所需专业基础知识&#xff0c;是否掌握…

PMP扫盲篇2 | PMP报名、缴费、考试那些事儿~~

接上一篇&#xff1a; ​PMP是一种项目管理考试认证&#xff0c;更是一种思路。 抱着考试的思路&#xff0c;你必须至少把PMBOK完整学下来&#xff1b;抱着学习PMP知识和思路的态度&#xff0c;你要终生阅读PMI的各种guide和参加各种pmp分享会、讨论会——因为你必须不停的学…

2022年注册会计师(CPA)考试模拟题及答案

1、股份有限公司的下列股票发行方式中&#xff0c;不需要证监会核准的是&#xff08;  &#xff09;。 A.上市公司发行新股 B.非公众公司非公开发行股票&#xff0c;发行后股东人数为80人 C.非公众公司向特定对象发行股票&#xff0c;发行后股东人数为210人 D.非上市公众…

PMP澳门机考3A学员考试攻略

&#xff08;刚到澳门&#xff0c;考试前一晚&#xff0c;寻找考场&#xff09; 备考篇 如何高效学习&#xff1f; 项目整合管理大概13章节&#xff0c;每次直播上课会讲其中的几个章节。 在上课前最好可以预习下讲义&#xff0c;很多内容并不是非得在课上才能获得&#xff0c;…

1. python学习基础

这里写目录标题 python学习总结python学习参考网址环境配置⚖ 包管理说明&#xff08;涉及包的位置&#xff0c;包的查找原理&#xff0c;如何设置模块&#xff0c;__init.py__&#xff09;conda和pip换源conda创建激活和切换环境pip进行包的管理&#x1fa9d;[pip官网&#xf…

[精简]快速入门五线谱

五线谱的每一根线&#xff0c;线与线之间的空间&#xff0c;都可以代表一个音&#xff0c;它是可推的低音谱号&#xff1a;高音谱号&#xff1a;接下来&#xff0c;我们需要记住4个do的位置&#xff08;因为记住了do的位置&#xff0c;其他音就可以推算出来&#xff09;&#x…

html5 五线谱,五线谱难学?5分钟完成五线谱入门

五线谱 (Musical Notation)是目前世界上通用的记谱法。在5根等距离的平行横线上&#xff0c;标以不同时值的音符及其他记号来记载音乐的一种方法。最早的发源地是希腊&#xff0c;它的历史要比数字形的简谱早得多。在古希腊&#xff0c;音乐的主要表现形式是声乐。到了罗马时代…

国产麒麟软件安装

1、通过应用商店安装 2、软件官网下载 下载qq 1、打开qq官网&#xff0c;找到linux版本 2、找到对应的安装包下载 麒麟是基于Ubuntu版本开发&#xff0c;下载Ubuntu的安装包 3、下载之后直接在下载文件夹双击安装下载的文件 4、输入用户的密码进行授权 5、安装成功 6、打…