开源项目贡献代码流程

原来在github上断断续续给许多项目提交过pr(pull requests),比较有成就感的是参与的datax-web项目,目前已近1.8k star。现将开源项目贡献代码流程成文,方便后续更多的同学参与到开源社区。

一.整体流程如下图

在这里插入图片描述

二.详细步骤

1.fork

  • 作用:在GitHub(或gitlab,gitee)上,将别人项目引出一个新的分支到你的GitHub账号(fork字面意思“叉子”)
  • 操作:github项目右上角点击fork,如下图(因为我已经fork过,所以没有fork到waterWang的选项);

在这里插入图片描述

  • 效果:自己的github上有了别人项目,可以看到项目从哪里fork过来的;

在这里插入图片描述

2.clone

  • 作用:将fork到自己github账户的项目,从github克隆到自己机器,以便开发修改代码;
  • 操作:git命令行或可视化git工具都可以(我习惯git命令行)。克隆如下图有三种方式,a地址克隆(又分https,SSH,GitHub CLI),b GitHub Desktop,c下载zip包
    在这里插入图片描述
>git clone url-xxx # 输入命令后安静的等待进度达到100%

在这里插入图片描述

  • 效果:本地文件夹中出现datax-web项目
    在这里插入图片描述

3.checkout

  • 作用:clone的下来默认的是master分支,但是开发尽量避免在master上—要开发,先切糕(checkout)
  • 操作:命令行
 >git checkout -b newBranchName 
 # 默认以当前本地分支为基准,创建并切换到新分支。
 #也可以以远程分支为基准,创建并切换到新分支 ,如下命令 
  git chekcout -b origin/master newBranchName  #origin/master 是远程地址别名为origin上的master分支;
  • 效果:创建出了一个新分支,并切换当前分支到新分支

在这里插入图片描述

4.add/commit

  • 作用:上步骤切出新分支后,可以书写自己代码,本地测试通过,可以进行代码的提交
  • 操作:git命令行
>git add .  # git add 还有很多用法,本文不再赘述
>git commit -m 'sth msg' # git commit 还有很多用法,已经msg的规范,本文不赘述
  • 效果:代码已经全部存在本地仓库(git status后提示nothing to commit, working tree clean)

5.push

  • 作用:从本地仓库将分支推到远程自己GitHub上。
  • 操作:git命令行
>git push origin branchName

在这里插入图片描述

  • 效果:GitHub上对应项目上多看一个分支;
    在这里插入图片描述

6.pull request

  • 作用:将上步骤的远程分支请求合并到原作者的项目上(真正意义上为开源项目提交代码)
  • 操作:GitHub页面。在原作者的项目页面点击pull request–》new pull request,(也可以直接点击compare and pull request)

在这里插入图片描述
注意选择从哪里合并到哪里(注意箭头方向),GitHub会检测代码是否可以合并,如果可以就会出现Able to merge,反之需要先解决代码冲突。
在这里插入图片描述

  • 效果:“pull request”合并请求已经发生,安静的等待原作者处理该请求。
    在这里插入图片描述
  • 4
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

water___Wang

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值