论如何参与一个开源项目(中):Fork仓库和编写代码_sync fork(1)

img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上大数据知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

需要这份系统化资料的朋友,可以戳这里获取

【上】参与的意义和如何提issue:https://blog.csdn.net/little_stick_i/article/details/127162039
【中】Fork仓库和编写代码:https://blog.csdn.net/little_stick_i/article/details/127170890
【下】创建PR和代码审查:https://blog.csdn.net/little_stick_i/article/details/127176171

本篇我们要讲的是如何开始向开源项目编写代码,没有看上篇的同学可以先去看一下上篇的内容噢!

第二步:Fork仓库

是时候开始进行项目的开发了!可是我们应该把代码写在哪里呢?

直接把代码下载下来,然后在本地开始写代码,写完代码再通过社交软件发送给项目的管理人员吗?当然不是,这一点都不Git。

我们应该先将原仓库Fork到自己的仓库里(在项目首页的右上角),相当于把这个仓库深拷贝一份到我们自己的仓库里。因为这样我们才有编辑的权限,写完代码以后才能将代码提交到GitHub上:

image-20221002201836732

点击 Create fork 即可

image-20221002201855519

Fork成功之后,在我们自己的仓库里就会有一份与原仓库一样的仓库,并且这个仓库是我们自己的,这意味着我们可以在这个仓库里进行任意的代码更改,But原仓库我们仍然是没有权限的。

所以我们将来编写代码的时候,就是在这个仓库上进行操作的。

现在我们将代码拉取到本地,我比较喜欢使用idea进行git操作,这个url记得用自己仓库的url:

image-20221002203701120

保证分支仓库和主仓库同步

仓库Fork以后,会出现一个新的问题:原仓库会有人更新代码,但我们的仓库不会被自动更新,就会导致两个仓库的进度不一致,将来提交PR的时候就可能会造成合并冲突。所以我们每次写代码和提交代码之前,最好都要先去同步一下我们的仓库。

(1)在GitHub上进行同步

点击分支仓库的Sync fork按钮,可以对分支进行更新操作:

image-20221002202942702

(2)在idea上进行同步

有时候我们使用方法一解决冲突可能会比较麻烦,因为在网页上操作没有那么方便,所以我更建议大家使用这个方法二。

  1. 首先在本地git仓库中添加多个远程仓库,右键点击远程,然后会弹出一个管理远程,点进去就可以配置远程仓库了

image-20221003114242833

这是我配置好的远程仓库,第一个main是源项目的仓库,第二个mine是我自己的(我用来演示的账号名就叫scblogs),我给他们分别取了对应含义的名称:

image-20221002205509020

然后我们点左边的fetch刷新一下,就可以看到有两个远程了:

image-20221002205715905
2. 当我们要准备写代码和提交代码之前,先fetch一下远程仓库,看看网络图,主仓库里有没有更新些什么东西

image-20221002213334812

我们发现远程的主仓库的main分支已经超过了当前我的分支(那个黄色的标记就是本地的当前分支),两个仓库不一致的时候(看不清可以放大),那我们就要及时的去拉取主仓库main分支的代码,将自己的仓库进行更新。
3. 拉取代码的时候选择主仓库的main分支,然后点拉取,就会更新合并到本地分支代码了:

image-20221002213651415

更新之后,我们当前分支已经处于最新的版本了:

image-20221002213757919

第三步:编写代码

没什么好说的,写代码就好了。

  • 在我们写代码之前,最好先看看项目的贡献者说明,或许我们在参与某项目之前就应该先看这个。 一般是主目录下的一个叫做 CONTRIBUTING.md 的文件,里面会写一些注意事项,包括代码规范和编写代码的一些操作、流程、步骤等,仔细阅读这份文档,可以保障我们的更好的参与项目的贡献。

img
img

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化资料的朋友,可以戳这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

fab5e56a57acb)**

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

  • 10
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值