当前位置:网站首页>openharmony萌新贡献指南
openharmony萌新贡献指南
2022-07-27 09:08:00 【华为云】
本篇教程旨在帮助萌新们一起参与到OpenHarmony的开源事业中,让每个人成为开源人,星星之火,可以燎原!最下面有我的入群方式。
在这之前先说一下,
官方的T恤
我的鸿蒙书籍
我的小鸟摆件
活动范围涵盖OpenHarmony主干仓、SIG仓、三方库,共计1000+个代码仓:
OpenHarmony主库组织地址:
OpenHarmony SIG组织地址:
https://gitee.com/openharmony-sig
OpenHarmony三方库组织地址:
https://gitee.com/openharmony-tpc
前提条件
有一个,没有的话,记得
如果Git基础薄弱,也是可以用图形化界面
windows推荐
mac推荐
接下来就是手把手的环节了
这儿也有两个图片可以看一下
一、配置Git
1.注册
地址: https://gitee.com/注册码云账号,只要点击导航条中的“注册”,或者点击首页中那个大大的“加入码云”按钮,即可进入注册页面。

输入账号、邮箱、密码,然后点击注册按钮.
注册的时候最好取一个有意义的名字,比如姓名全拼,昵称全拼,如果被占用,可以加上有意义的数字.
注册完官方会向大家的邮箱发送一份激活邮件,请点击其中的链接激活账号,账号激活后,注册流程就算完成了。注册完毕即以新注册的账号登录,登录后即进入用户的控制面板页面。
找不到ssh-keygen命令是因为你的工作目录不在ssh-keygen.exe所在目录下,导致找不到命令,所以切换工作目录到ssh-kengen所在目录(Git/usr/bin/)即可。以我为例,我的Git安装在D盘Git下,所以进行操作 cd D:/Git/usr/bin/ ,然后执行 ssh-keygen -t rsa -C “您的邮箱地址” 即可
2.公钥认证管理
开发者向码云版本库写入最常用到的协议是 SSH 协议,因为 SSH 协议使用公钥认证,可以实现无口令访问,而若使用 HTTPS 协议每次身份认证时都需要提供口令。使用 SSH 公钥认证,就涉及到公钥的管理。
3.如何生成ssh公钥
你可以按如下命令来生成sshkey:
这个邮箱就是你的上面的邮箱
ssh-keygen -t rsa -C "[email protected]" # Generating public/private rsa key pair...# 三次回车即可生成 ssh key比如我的
ssh-keygen -t rsa -C "[email protected]" 然后三次回车即可生成 ssh key,
查看你的 public key,
mac
cat ~/.ssh/id_rsa.pub# ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC6eNtGpNGwstc....windows
在C:\Users\用户.ssh目录下找到id_rsa.pub复制里面所有内容

4.添加public key到码云
并把他添加到码云(Gitee.com)

添加后,在终端(Terminal)中输入
ssh -T [email protected]若返回
Welcome to Gitee.com, yourname!则证明添加成功。
二、DCO签署
1.DCO签署网址
2.签署DCO
注意:
DCO签署Name 必须要和git config --global user.name 设置保持一致(其实不一致也可以,但一致之后少麻烦)
DCO签署E-mail必须要和git config --global user.email设置保持一致

3.修改本地的邮箱和签署邮箱一致
git config --global user.name "你的名字" git config --global user.email "你的gitee绑定邮箱"git config --global --list比如我的:
git config --global user.name "徐建国" git config --global user.email "[email protected]"git config --global --list三、提交代码
1.下载代码
1.1找到要提交代码的社区代码仓,fork一个到自己的私有仓中;
比如我fork的是docs仓
原地址:https://gitee.com/openharmony/docs
fork后:https://gitee.com/jianguo888/docs
而你后面要git clone的就是后者。

1.2复制自己私有仓的“克隆/下载”中的HTTPS/SSH链接下载代码
本地创建工作区,然后
git clone https://gitee.com/你的giteeID/docs.git比如我的
git clone https://gitee.com/jianguo888/docs.git
2.提交代码
2.1将修改的代码合入到提交代码仓中;
必须添加邮箱,否则后面的doc校验不过
切记:提交的时候必须是-s -m
-s的意思就是带了你的signoff
git add .git commit -s -m '修改信息' // 提交信息包括你的概要信息git push -f origin master 比如我的:
git add .git commit -s -m '修改redeme提高可读性 ' // 提交信息包含signoff邮箱git push -f origin master 2.2如何追加signoff到上一次commit?
执行git commit --amend --signoff命令 。
2.3如果是对同一个问题修改
git commit --amend通常推荐一个一个commit解决一个问题
四、提交ISSUE
1.(不是fork的代码仓),同时注意建Issue有很多选项类型可选择,根据实际情况选择
名称
【OpenHarmony开源贡献者计划2022】+Issue内容描述


2.创建成功会生成一个#XXXXX(I5E2H2)的IssueID,后续提交PR可以关联,关联PR合入,Issue就会自动关闭。

五、提交PR
1.代码提交到自己的私有仓,刷新,点击“+ Pull Request”建PR合入代码到社区主代码仓;

2.进入PR提交界面,可选择代码仓库分支,和关联ISSUE ID,简单描述合入的PR修改等信息;

标题都是【OpenHarmony开源贡献者计划2022】+你修改的任务摘要
比如我的:
【OpenHarmony开源贡献者计划2022】+智能家居中控

关联ISSUE ID
第一步查看自己的issues ID

第二步添加到自己的Pull request的描述里

3.PR建立成功,首先默认进行DCO检查,检查成功,需要手动在评论区输入回复”start build”方可进入代码的CI静态检查和编译等操作。

六、联系committer
committer:https://gitee.com/openharmony/community/blob/master/zh/committer.md
1. committer文档中找到对应的committer负责人主页,想办法联系
这一步,可以找我沟通就好,我帮大家联系。
我是在committer发现负责人,然后微信搜索,群里捞到的。


参考资料
坚果的小伙伴们提的Pr
悠悠森:https://gitee.com/openharmony/docs/pulls/6910
https://gitee.com/openharmony/docs/pulls/6921
https://gitee.com/openharmony/docs/pulls/6937
https://gitee.com/openharmony-sig/knowledge_demo_entainment/pulls/35
边栏推荐
- 500 error reporting
- 罗克韦尔AB PLC 通过RSLinx Classic与PLC建立通信的具体方法步骤
- [micro service ~sentinel] sentinel dashboard control panel
- N queen problem (backtracking, permutation tree)
- 接口测试工具-Postman使用详解
- Size limit display of pictures
- Mangodb simple to use
- linux下安装oracle,本地PL/SQL连接Linux下的oracle导入表并新建用户和密码
- 微信安装包从0.5M暴涨到260M,为什么我们的程序越来越大?
- Sharing of four open source face recognition projects
猜你喜欢

Redis network IO

【进程间通信IPC】- 信号量的学习

A survey of robust lidar based 3D object detection methods for autonomous driving paper notes

Pyqt5 rapid development and practice 4.1 qmainwindow
![[interprocess communication IPC] - semaphore learning](/img/47/b76c329e748726097219abce28fce8.png)
[interprocess communication IPC] - semaphore learning

CUDA programming-05: flows and events

CUDA programming-01: build CUDA Programming Environment

js call和apply

Hangzhou E-Commerce Research Institute released an explanation of the new term "digital existence"

罗克韦尔AB PLC 通过RSLinx Classic与PLC建立通信的具体方法步骤
随机推荐
存储和计算引擎
DNS域名空间
Aruba学习笔记10-安全认证-Portal认证(web页面配置)
Deep understanding of Kalman filter (3): multidimensional Kalman filter
CUDA programming-04: CUDA memory model
Replace restricts the text box to regular expressions of numbers, numbers, letters, etc
【ACL2020】一种新颖的成分句法树序列化方法
PVT的spatial reduction attention(SRA)
Tensorflow模型训练和评估的内置方法
vscod
苹果降价600元,对本就溃败的国产旗舰手机几乎是毁灭性打击
[micro service ~sentinel] sentinel dashboard control panel
Matlab数据导入--importdata和load函数
pollFirst(),pollLast(),peekFirst(),peekLast()
03. Use quotation marks to listen for changes in nested values of objects
Arm system call exception assembly
500报错
Aruba learning notes 10 security authentication portal authentication (web page configuration)
易语言编程: 让读屏软件可获取标签控件的文本
"Weilai Cup" 2022 Niuke summer multi school training camp 1