黑客节:如何在 GitHub 上提交您的第一个 Pull Request

Introduction

Hacktoberfest是一个为期一个月的开源软件庆祝活动,由DigitalOcean运营,向我们全球社区的每个人开放。要参与,您需要在10月份向公共GitHub存储库提交四个高质量的拉取请求。完成挑战后,您将获得特别奖品,包括一件独家Hacktoberfest T恤。

您可以在10月1日至10月31日之间的任何时间注册,我们鼓励您与其他开发人员和Hacktoberfest爱好者联系,从9月份开始参加虚拟活动和信息会议。

在本教程中,我们将向您介绍Git和GitHub,Git是用来提交Pull请求的版本控制系统,GitHub是我们用来跟踪进度的存储库托管服务。在本教程结束时,您将准备好提交您的第一个Pull请求,并将顺利地参与Hacktoberfest!

版本控制

在开始介绍Git和GitHub之前,让我们先谈谈版本控制。当开发人员一起处理一个项目时,他们经常需要处理相同的代码库。在他们工作的同时,每个开发人员都需要知道其他开发人员所做的更改,这样才不会重复工作或在已经完成的工作上编写代码。

版本控制系统充当代码的保存程序,它为项目分配版本,并跟踪项目中每个文件随时间的变化。通过这种方式,开发人员可以通过签入最新版本来共同处理项目,以便在处理项目代码的部分之前查看所做的更改。

Git和GitHub

Git是用于管理各种规模的开发人员项目的版本控制系统,由Linux的创建者Linus Torvalds于2005年创建,旨在帮助开发人员以快速、高效和廉价的方式贡献代码和共享代码修订。Git使开发人员能够编辑、共享和发布代码,从而促进协作和团队合作。

GitHub是一个基于云的Git资源库托管服务,允许开发人员获取他们在本地机器上编写的代码,并将其与世界共享。它提供了一种在本地计算机上通过存储库或中央文件存储位置公开共享受版本跟踪的项目的方法,根据项目的可用性(可以是公共存储库或私有存储库),其他开发人员可以下载该项目以编辑代码、提供洞察力等。

要开始使用GitHub,您可以在GitHub.)上创建帐户有关如何做到这一点的更多详细信息,请参阅Hacktoberfest Resources page.

克隆到仓库

现在我们将克隆和编辑我们的第一个GitHub存储库。首先,让我们导航到我们想要克隆的存储库。在本教程中,我们将使用Cloud Haiku repository。 在克隆这个仓库之前,也就是将GitHub上的代码副本复制到本地机器上,您需要将整个仓库的副本复制到您自己的GitHub帐户中。这被称为存储库的a fork,它允许您在不影响主代码库的情况下开发代码。

要派生存储库,请单击存储库右上角的Fork按钮。要克隆,请点击code按钮,复制提供的链接,然后观看GitHub获取该存储库并将其作为副本添加到您的帐户中。您的名字现在应该以这个存储库的创建者的身份出现,它是主haiku存储库的一个分支

克隆repository

接下来,导航到命令行界面以在本地计算机上克隆项目。您可以使用git clone命令来执行此操作,该命令将克隆或复制我刚刚从haiku存储库创建的fork到我的本地计算机。这将使您能够在本地(在您自己的机器上)更改代码库。

1cd ~
2git clone https://github.com/sammy/cloud_haiku

编辑代码内容

现在,您的本地计算机上已经有了Cloud Haku存储库的副本,因此您可以准备您的贡献了。使用命令行界面导航到克隆的存储库所在的文件夹。如果您遵循了这一点,您的主目录中应该有一个`cloud_haiku‘文件夹:

1cd ~/cloud_haiku

有许多文本编辑器和集成开发环境(IDE)可用于编辑代码。IDE通常按编程语言划分,并包括一系列有用的功能,以简化使用该语言开发应用程序的过程。如果您的工作机器中目前还没有设置集成开发环境,请考虑查看Hacktoberfest的参考资料page],以获取有关如何选择集成开发环境的建议。

重要的是要花时间阅读和理解项目是如何组织的,以及贡献指南,并找到您可以处理的代码部分。在进行更改之前,请阅读提供的任何相关文档。接下来,让我们来提交一首跆拳道!

浏览Codebase

向远程仓库添加内容

既然我们已经对haiku存储库进行了更改,我们将需要跟踪并保存该更改。跟踪更改的第一步是将其添加到您正在处理的版本中。为此,我们将执行命令git add.

1git add .

以这种方式编写命令允许您跨文件添加对存储库所做的所有更改。如果您只需要提交对单个文件的更改,可以使用git添加文件名

1git add sammyhaiku.md

运行add命令后,您将不会得到任何确认。要查看您的更改是否包含在准备提交的文件列表中,可以执行命令git status

1git status

这允许您检查跟踪的更改的状态--您将看到您的文件已被添加,但并未作为更改被提交。如果您需要在将更改作为新代码或编辑代码进行正式跟踪之前对其进行修改,Git提供了这一步骤。

![git添加](https://cdn.jsdelivr.net/gh/andsky/tutorials-images/ods/hfestfirst stpr-add.gif)

接下来,让我们提交我们的更改。执行git Commit命令,并添加一条消息,以便其他参与该项目协作的开发者知道您所做的更改:

1git commit -m "added sammy haiku"

通过使用消息编写提交,开发人员可以被告知所做的更改-该消息与提交ID和您的用户名一起被跟踪。

Git Commit

提交后,我们需要将更改从本地机器推送‘到GitHub上的远程存储库。为此,让我们执行命令git pres`:

1git push

在这里,我们可以指定推送的来源-在本例中,我们希望我们的贡献进入我们的DigitalOcean的haiku存储库的分叉版本。

git推送

总而言之,到目前为止,我们已经确定了一个我们想要编辑的存储库,并使用forkclone将该存储库的副本带到了我们的GitHub帐户和本地机器中。我们进行了更改,并提交了带有git add的更改。然后,我们通过运行提交更改的git Commit来巩固我们的更改。`Git Push‘将我们的更改从本地计算机推送到GitHub上的远程存储库。如果我们查看GitHub,我们会发现我们所做的更改反映在我们的haiku库副本中的文件中。

创建拉流请求

我们现在已经准备好让项目的维护人员知道,我们对存储库进行了更改,我们对此很有信心,并准备提交。为此,我们将单击右侧的_Pull Request_按钮。

[提交公关](https://assets.digitalocean.com/ods/hfestfirst stpr-pr.gif)

点击Pull Request按钮后,将打开一个新页面,其中包含一个表单,其中解释了我们所做的更改,并显示所做的更改是否与现有内容有任何冲突。我们将在适当的标题中添加详细说明更改的内容,并在说明中添加对更改内容和原因的解释。根据项目的不同,您在此处添加的内容可能会有所不同--请查看项目的协作指导原则,以确保您的请求格式正确。

在添加了所做更改的标题和描述之后,我们将扫描Pull Request页,以确保我们提交的更改不会与对代码库所做的现有更改冲突。如果一切正常,我们将在底部获得一个绿色的_Submit Pull Request键,它会升级我们的请求,要求我们更改原始的Haiku诗歌代码库,任何查看该主分支的人都可以看到这一贡献。要有耐心--维护人员可能需要一些时间来检查您的请求。可以在拉入请求页面上添加修改和备注,对相同受影响文件所做的新提交将显示在请求的历史记录中。

祝贺您--我们已成功提交了第一个拉取请求!

结论

在本教程中,您了解了Git和GitHub,并成功地识别了更改并将其提交到公共存储库。对于Hacktoberfest,你需要提交4个有意义的拉取请求,所以再次,找到与你产生共鸣的项目,享受黑客的乐趣!

要了解本教程的实际操作过程,请看下面这段有用的视频,它将指导您完成提交第一个Pull请求的过程:

视频:如何提交您的第一个PR

有关Hacktoberfest的更多信息,[访问我们的主页。] (http:hacktoberfest.digitalocean.com) 要了解有关Git的更多信息,请访问[如何使用Git:参考指南]。(https://www.digitalocean.com/community/cheatsheets/how-to-use-git-a-reference-guide) 有关GitHub的更多信息,请访问GitHub

Published At
Categories with 技术
comments powered by Disqus