当前位置: 首页 > 科技观察

为开源项目做贡献的10个步骤

时间:2023-03-13 07:05:06 科技观察

一个创建干净、管理良好的GitHub贡献的简短指南。在本文中,我将提供10个简单的步骤来确保GitHub贡献快速而干净。Contents:Contributionlifecycle(steps)1.fork主仓库2.将fork的仓库克隆到你的电脑上3.创建一个功能/特性分支4.提交对特性分支的更改5.将特性分支推送到你的forkRepository6.对主存储库提出拉取请求(PR)7.处理评论并合并PR8.将主存储库作为上游添加到克隆存储库9.从上游更新您的主分支10.将主分支推送到您的复刻repository(optional)deletefeaturebranchlifecycleoflastcontribution(steps)1.forkmasterrepositoryforkmasterrepository将在您的帐户中创建一个副本。您可以进行更改并将任何代码推送到此分支,而不必担心弄乱原始代码库。单击页面顶部的分叉按钮以创建新分叉。分叉的存储库现在可以在您帐户的“存储库”部分找到。2.fork后的仓库被克隆到你的电脑上fork后的仓库被克隆到电脑上,这样我们就有了一份代码的本地副本。单击分叉存储库的SSH或HTTPSURL旁边的剪贴板图标以复制它。现在在您的计算机上打开一个终端并运行以下命令来克隆fork的存储库:gitclonegit@github.com:theawesomenayak/guava.git3.创建一个特性/特性分支对代码进行任何更改时的最佳实践是为我们需要进行的更改创建一个新的功能分支。这确保我们保持master分支干净,并且能够简单地恢复我们的代码或在必要时进行更新。更改到克隆分叉存储库后创建的目录:cdguava创建一个新的功能分支,其名称标识您计划进行的更改。例如:gitcheckout-bfix-npe-issue4.将更改提交到功能分支如果您在更改中创建任何新文件,则需要将它们添加到刚刚创建的分支。gitadd对于所做的所有更改,您必须将它们提交到分支。确保添加有效的提交消息(根据项目的约定):gitcommit-m"FixedtheNPEissueduetoanullkeyusedincache"5.将功能分支推送到你的分支存储库现在是时候将你的提交推送到你的分支存储库了:gitpushoriginfix-npe-issue6.提交主仓库的PullRequest(PR)并将代码推送到分叉仓库后,就可以提交主仓库的PR。单击“PullRequest”按钮开始新的PR。这将带您进入一个屏幕,您的分支存储库中的更改将与主存储库中的代码进行比较。您可以在提交之前查看更改并提供有效的更改说明。7.ProcesscommentsandmergePRCode维护者通常会返回一些关于你所做的更改的评论,这些更改可以是功能更改或外观更改,例如格式设置等。完成这些更改后,只需将它们推送到您的分支,PR就会自动更新。一旦您的更改没有问题,维护者会将它们合并到主存储库中。恭喜!!您现在正式成为开源贡献者。8.将主仓库作为上游添加到克隆仓库中除了你之外,许多其他开发人员一直在将他们的代码合并到主仓库中,我们需要不断地与其fork仓库同步以获取最新代码。您的克隆存储库链接到分叉存储库,为了使分叉存储库与主存储库保持同步,您需要通过将主存储库添加为克隆存储库的上游来链接它们。gitremoteaddupstreamgit@github.com:google/guava.git使用命令验证上游是否正确设置:gitremote-v它应该显示以下值以确认源和上游指向正确的repo:originingit@github.com:theawesomenayak/guava.git(获取)originingit@github.com:theawesomenayak/guava.git(推送)upstreamgit@github.com:google/guava.git(获取)upstreamgit@github.com:google/guava.git(push)9.从上游更新一旦你的主分支被上游,你可以拉取其他开发人员在主仓库中所做的更改,这将更新本地机器上克隆的仓库:gitpullupstreammaster10。将master分支推送到你的分支仓库,一旦你在你的本地机器上有了所有更新,你需要将它们推送到你的分支仓库,以便它与主仓库同步。gitpushoriginmaster(可选)删除feature分支feature合并到主仓库后不再需要,可以删除:gitbranch-dfix-npe-issue也可以从fork的仓库中删除远程分支:gitpushorigin--deletefix-npe-issue为GitHub项目做贡献最终可能会很棘手,这取决于有多少开发人员同时在做。希望本文为您理清了GitHub贡献流程,让您的开发周期更轻松一些。本文转载自微信公众号“前端全栈开发者”,可通过以下二维码关注。转载本文请联系前端全栈开发公众号。