【手把手指导】给开源项目贡献代码

简介: 很多新人学习了技术,但是没有地方施展。

问题不大,找几个开源项目来参加就可以了,需要开源项目磨练的可以联系学委。


本文重点讲解如何快速的给开源项目贡献代码。


首先你必要要有一个GitHub账号(或者Gitee/CSDN也行),然后找到开源项目,申请加入。或者fork模式参与开发。


对了,还没有安装ppc的直接运行下面命令:


pip install pypi-seed # pip install --upgrade pypi-seed 或者这个命令升级最近ppc
ppc # 运行pypiseed命令行查看使用帮助

image.png

本文基于pypi-seed演示,下面展示申请加入后的必备操作。

第一步 创建个人开发分支

比如参与到pypi-seed项目,先熟悉项目结构代码,然后进行贡献。

创建分支:dev-code-fix-0923 (分支名字需要自己记住,跟提交的功能有关即可)

image.png

第二步检出自己的开发分支

打开pycharm,检出整个pypi-seed代码:

git clone git@github.com:py4ever/pypi_seed.git

然后打开git视图:

image.png

image.png

第三步 本地开发并提交代码

在自己的分支上继续开发,然后commit 并push代码。


比如找到自己需要修改的代码,修改并commit(提交高效的修改描述信息),然后push上传代码到Github。


当然这里有一个非常重要的点:


运行测试,保证一切现有测试都运行通过!并为自己新增功能添加测试用例


我们打开Github网站能看到自己的分支


image.png

第四步 提交一个Pull Request申请开源项目的负责人进行审核合并

创建一个PR如下图:

image.png

提交完之后,可以找到项目的工作组或者负责人给他发送邮件,简单说一下本次提交的内容。(如果提交很多修改,请务必解释清楚)


本文展示的PR:


https://github.com/py4ever/pypi_seed/pull/1/files


打开可以看到提交的修改的详细信息,这次提交修改了公众号信息,截图如下。


image.png

总结

贡献代码给开源项目这个过程 = 验证自己的开源项目理解的一个过程,能够被合并发布,也是得到了项目方的认可的。


更多是一个前期准备,你需要理解熟悉这个项目,而不是胡乱修改就提交了(一般被否决或者无视了)


当然学委这里并没有展示一个需要花比较长时间开发才能合并的branch的操作,本文只是展示了一个开发的关键环节,算是最基本的提交了。更复杂的提交方式,这个以后会说。


目录
相关文章
|
人工智能 运维 监控
阿里云联合中国信通院等单位发布首个云计算智能化可观测性能力成熟度模型标准
推动行业智能化落地,阿里云联合中国信通院及国内头部云厂商、观测厂商、各行业建设方,历时近 5 个月,共同编制《云计算智能化可观测性能力成熟度模型》,以规范和指导云计算环境下的智能可观测性建设实践,为企业实施云环境下的智能化可观测能力建设提供指导。
708 93
|
弹性计算
阿里云服务器最新价格参考,100元-5000元预算可购买的云服务器配置及价格汇总
2024购买阿里云服务器多少钱?由于个人和企业用户的上云场景和预算不同,不同预算可购买的阿里云服务器实例规格和配置不同,一般来说个人用户购买云服务器的预算都在100元-500元以内,普通企业用户预算大多在1000-3000元之间,大型企业因为对云服务器性能要求更高,一般会将预算提高到3000元-5000元以上,那么这些预算能买到一个什么配置的阿里云服务器呢?下面是截止目前不同预算情况下,可购买的阿里云服务器配置和活动价格及券后价格整理,以供大家参考选择。
2276 1
阿里云服务器最新价格参考,100元-5000元预算可购买的云服务器配置及价格汇总
|
分布式计算 算法 搜索推荐
阿里巴巴内部:全技术栈PPT分享(架构篇+算法篇+大数据)
我只截图不说话,PPT大全,氛围研发篇、算法篇、大数据、Java后端架构!除了大家熟悉的交易、支付场景外,支撑起阿里双十一交易1682亿元的“超级工程”其实包括以下但不限于客服、搜索、推荐、广告、库存、物流、云计算等。 Java核心技术栈:覆盖了JVM、锁、并发、Java反射、Spring原理、微服务、Zookeeper、数据库、数据结构等大量知识点。 大数据:Spark、Hadoop
|
人工智能 安全
美欧AIGC监管政策对比
【1月更文挑战第10天】美欧AIGC监管政策对比
558 1
美欧AIGC监管政策对比
|
SQL 存储 NoSQL
【XL-LightHouse】开源通用型流式大数据统计系统介绍
XL-LightHouse是针对互联网领域繁杂的流式数据统计需求而开发的一套集成了数据写入、数据运算、数据存储和数据可视化等一系列功能,支持大数据量,支持高并发的【通用型流式大数据统计平台】。
【XL-LightHouse】开源通用型流式大数据统计系统介绍
|
人工智能 安全 大数据
SDN(软件定义网络)——重塑网络架构的新视角
SDN(软件定义网络)是网络架构革新的关键,通过分离控制与数据平面,实现网络的灵活、高效管理。未来,SDN将更广泛应用于各行业,与云计算、大数据、AI融合,推动数字化转型。开放与标准化的趋势将促进SDN生态发展,提供以业务需求为导向、智能化自动化管理及增强网络安全的新视角。SDN将在更多领域扮演重要角色,支持网络技术的创新与进步。
|
Go
新手向:Go语言发送邮件简易教程
新手向:Go语言发送邮件简易教程
784 0
|
NoSQL Java Redis
jedis分布式锁实现
jedis分布式锁实现
331 0
|
数据安全/隐私保护 UED
Mac下Transmit安装教程
Mac下Transmit安装教程
528 0