IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 开发工具 -> 不要在白嫖Github了 -> 正文阅读

[开发工具]不要在白嫖Github了

DevWeekly收集整理每周优质开发者内容,包括开源项目工具资源技术文章等方面,每周五首发于DevWeekly,欢迎大家Star并收藏!

提起Github,很多同学第一印象就是一个巨大的宝藏库。

在这里面可以寻找到很多优秀、开源、免费的工具,而且如果在项目中遇到了难题,还可以找一个类似的克隆下来修修改改就发不上线。

但是,除了这些之外Github还是一个很不错的学习提升平台。

在之前的回答中我曾经提到过,如果想要提升代码水平,我们可以通过加入并贡献Github项目来实现。

通过加入Github项目,我们可以和其他开发者一起协同开发,在不断迭代和升级的过程中学习到很多贴近实际项目的技能。

下面,我就来详细介绍一下如何加入Github项目!

什么是开放源码?

在学习如何加入Github开源项目之前,首先需要了解一下什么是开源项目。

简单地说,开源项目(或软件)是具有开发源代码的软件,任何人都可以检查、修改和优化。

除了参与源代码的优化迭代,你还可以为项目的文档、项目中使用的图片、插图和视频等内容作出贡献。

因此,你可以选择一个开源项目,查看它包含哪些内容,找到一个bug并创建一个新的问题,或者处理一个现有的问题。

为什么贡献开源项目?

提起贡献和付出,很多同学一开始都会有一些排斥,因为,对于大多数用户来说索取远比贡献更容易接收。

但是,贡献开源项目则不同,因为在这个过程中,我们能够获取到很多东西:

  • 高效学习:在参与开源项目的开发过程中,可以学到很多东西
  • 曝光率:开源社区非常受欢迎,你将会和那些志同道合的人建立联系
  • 实战经验:如果你是一个学生,或者是没有从事过任何实战项目的开发,那么这是一个很好的方式来获得实战项目开发经验的好机会,因为这些项目可能被成百上千甚至数百万人使用

现在,已经知道什么是开源项目以及为什么贡献开源项目。

那么,估计很多同学会有疑问:该怎么贡献开源项目呢?

别着急,下面就开发高速大家如何贡献开源项目!

贡献开源项目

第一步:选择项目

Github上有数不胜数的项目,很多人打开Github估计都会一脸茫然,不知道该如何下手。

这时候,就需要有清晰地思路,根据你感兴趣的领域(数据分析、后端、前端、人工智能、微服务)、语言(Python、Java、Go、Java、C++)来缩小范围,筛选出你感兴趣的开源项目,这里已项目templates

img

第二步:fork仓库

进入项目仓库,你会在页面的右上方看到一个fork的选项:

img

然后,点击创建分支:

img

第三步:克隆分支代码

fork后,你会被重定向到你的GitHub账户,这是会发现,在自己仓库里创建了一个原始项目的副本,我们可以在这个副本里做任何修改。

img

接下来,就在自己的电脑上克隆这个仓库:

  • 复制这个仓库的URL
  • 在桌面上打开终端
  • 使用git clone [repository-url] 命令把项目克隆到本地
git clone

经过这些操作,项目就被克隆到本地了。

img

第四步:添加上游

我们需要将本地克隆的代码与原始版本库(最原始的,非fork到自己仓库的)连接起来,这个过程叫做添加上游(upstream):

  • 在克隆的文件夹中打开终端
  • 使用git remote add upstream [original repo URL]命令

要检查上游是否被成功添加,请使用下面这个命令:

git remote -v

img

如果它返回的信息如上图所示,那么就说明我们操作正确了。

注意,我们需要在你的克隆版本中添加上游,这样你就可以获取原始(mudit023/templates)版本中的修改。

可能还有其他的贡献者会在原始项目中进行修改,为了获取这些修改,你需要添加上游并执行下面命令:

git pull upstream main

这将确保你在本地克隆的版本库与原始远程仓库保持一致。

估计有的同学到这里有一些迷糊,不清楚upstream和origin什么区别,下面通过一个图示接阐述一下:

img

也就是说,我们先从原始仓库fork到自己的远程仓库,然后才从自己的远程fork克隆到本地,最后,再建立本地仓库和原始仓库的关系。

第五步:创建新分支

在进行任何修改和拉取代码(PR)之前,首先要创建一个新的分支(branch),然后,并从main分支切换到新分支。

创建新的分支并切换到该分支:

git branch -b newContribution
git checkout -b newContribution

img

你可以根据自己的喜好给分支起一个容易理解的名称。

第六步:贡献代码

到此为止已经做好了各种准备工作,接下来就是正式开始贡献代码了!

需要注意,着手之前先好好看一下Readme,这是了解一个项目最直接的方式,通过Readme我们可以获取到很多有价值的信息,例如:

  • 它会告诉你很多关于这个项目的信息
  • 如何使用该项目
  • 如何为该项目做贡献
  • 当你遇到困难时,该如何寻求帮助

img

接下来,在标签栏可以看到issues选项,点击之后你可以看到这里罗列了很多其他人提出的问题,你可以在这里添加自己的问题。

img

当你点击一个问题时,你会看到问题的细节和互动内容,在那里你可以与维护者和其他贡献者讨论这个问题。

img

在开始处理一个问题之前,首先要对它进行评论,并告诉其他人你想处理这个问题。如果维护者将该问题分配给你,你就可以开始处理了。

img

第七步:添加并提交你的修改

在获得处理该问题的权限后,你可以在克隆的仓库中启动你的代码编辑器,并进行你想做的修改。

当你完成你的工作后,使用git命令来添加和提交你的修改:

git add .
git commit -m "my first contribution"

第八步:创建PR

目前,所做的修改只存在于你的系统中,我们必须从我们的系统中推送修改到fork的远程仓库(是origin,不是upstream)。

打开终端,输入下面命令即可:

git push origin newContribution

你已经把修改推送到了fork的副本仓库,但我们希望这些修改能被合并到原始项目中,这样才算得上是贡献。

为了合并你所做的修改,你必须创建一个pull request(PR)。

当你创建PR时,你需要征得项目维护者/拥有者的同意来合并你所做的修改。

接下来看一下,如何创建一个PR。

进入远程fork仓库,在它的主界面上,你会看到一个create pull request

点击它,你会看到一个像下面这样的界面:

img

再次点击create pull request,会出现下面这样的界面:

img

在这里,你可以给你的PR起一个不同的消息或名字。当然,也可以使用默认的,然后再点击下面的create pull request

img

到这里就创建了一个PR,你可以去原始仓库(upstream),你的PR将在PR部分可以看见。

img

点击你的PR,检查它是否已经通过了所有的测试,并且没有任何合并冲突。

如果它没有合并冲突,并且你正确地遵循了项目的PR要求,维护者会很快合并你的PR。

如果有任何问题,PR部分也有一个评论区,你可以和维护者聊天,寻求帮助或审查。

  开发工具 最新文章
Postman接口测试之Mock快速入门
ASCII码空格替换查表_最全ASCII码对照表0-2
如何使用 ssh 建立 socks 代理
Typora配合PicGo阿里云图床配置
SoapUI、Jmeter、Postman三种接口测试工具的
github用相对路径显示图片_GitHub 中 readm
Windows编译g2o及其g2o viewer
解决jupyter notebook无法连接/ jupyter连接
Git恢复到之前版本
VScode常用快捷键
上一篇文章      下一篇文章      查看所有文章
加:2022-07-21 21:44:34  更:2022-07-21 21:44:36 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/25 22:45:18-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码