为开源贡献 101
各位 CodeNewbies 大家好👋,
这是Hacktoberfest的最后一周了!
我写这篇文章的时候,还剩两天😄。
如果你想贡献一份力量,你还来得及!
去年,我写了一篇关于我第一次为开源做出贡献的文章。
当时,我需要配置指向的远程仓库。我还必须从命令行upstream
获取并合并以更新仓库。 但现在,借助 GitHub 的一些功能,有些事情变得简单了。upstream
origin
在本文中,我将引导您了解对开源项目做出贡献的流程。
事不宜迟,让我们开始吧!💪
🛠 关于工具的说明:
我在浏览器上使用 GitHub 站点,并在 VSCode 上使用集成 bash 终端。
1. fork 原始仓库
首先,我们想 fork 原始仓库,而不是直接克隆它。
为什么要 fork 原始仓库?你可以在这篇文章中找到答案。
如何做到这一点?
- 前往开源仓库
fork
通过单击GitHub 右上角的按钮来 Fork repo 。
这个分叉的 repo 是origin
repo,而原始 repo 是upstream
repo。
2. 克隆 fork 仓库
- 转到我们的 repo 列表并打开分叉的 repo。
- 单击绿色的“代码”按钮。
- 选择我们想要克隆的位置并复制链接。
- 打开终端/命令行。
- 使用命令将其指向我们想要存储本地存储库的目录
cd
。 - 跑步
git clone <copied-link>
。
3. 创建工作/功能分支
我们有本地仓库,可以开始处理更改了。
但在此之前,我们需要创建一个新的分支来处理它。不要在main
/master
分支中进行任何更改。
我们可以随意命名分支。在本例中,我将其命名为working-branch-name
。
-
跑步
git checkout -b working-branch-name
。此命令创建一个名为的新分支
working-branch-name
,并将自动引导我们到该分支。
4. 做出改变
我们还没有完成修改,但我们想就此打住
有时我们还没有完成更改,想稍后再继续处理。
换句话说,我们还没有准备好提交更改。
不要让我们的工作未保存。
如果我们不保存或提交更改,这些更改可能会被带到其他分支。
那么我们应该怎么做呢?
-
跑步
git stash
。此命令将保存我们的更改并将文件置于其原始状态,就像我们进行任何更改之前一样。
-
跑步
git stash pop
。此命令将返回我们保存的工作,现在我们可以继续进行更改。
但是,我们鼓励在做出任何更改后立即提交。拥有可供回顾的更改历史记录将大有裨益。
我们已经完成修改
-
跑步
git add .
这将添加我们所做的所有更改。
或者,
-
跑步
git add -p
。我们可以逐一选择要暂存的更改。此命令将显示文件差异的块,并要求我们逐一暂存它们。
您可以在此处阅读更多相关信息。
-
跑步
git commit -m "Our message of changes here"
。
5. 更新远程和本地仓库
我们需要确保我们的本地 repo 与推送之前original
具有相同的更新。upstream
-
转到我们在 GitHub 上的分叉仓库。
我们会
Fetch upstream
在右侧看到一个按钮。GitHub 让我们可以轻松地从中获取更新
upstream
。点击此按钮,我们将看到一个下拉菜单。
当Fetch and merge
按钮处于非活动模式时,页面上没有更新upstream
。如果按钮显示绿色,请点击它。我们的
origin
repo 现在具有与 相同的更新upstream
。 -
前往我们的航站楼。
- 使用命令前往我们当地的
main
分支git checkout main
。 -
跑步
git pull
。main
此命令将获取 repo分支中的更改并将其合并origin
到本地main
分支。 -
跑步
git status
。此步骤确保我们的本地分支与 repo中的分支
main
保持同步。main
origin
我们的本地分支机构现在具有与和
main
相同的更新。origin
upstream
- 请携带 前往我们的分行
git checkout <branch-name>
。 - 跑步
git merge main
。
- 使用命令前往我们当地的
如果合并分支后遇到冲突,可以阅读我之前的文章(问题 5) 。
6. 将我们的更改推送到original
仓库
-
跑步
git push -u origin working-branch-name
。此命令告诉推
working-branch-name
送到origin
repo。
7. 创建拉取请求
- 前往
upstream
repo。 -
单击“比较和拉取请求按钮”。
-
它会将我们重定向到“打开拉取请求”表单。
填写表格时,请以我们的变更为标题。在正文中填写变更描述。并在此处添加对问题的引用。
-
如果在合并之前我们需要维护人员的一些审查,我们可以起草一份拉取请求。
点击“创建拉取请求”按钮旁边的箭头即可。它会弹出一个下拉菜单。选择“创建草稿拉取请求”,然后点击按钮。 否则,点击默认的“创建拉取请求”按钮。
8. 现在,下一步是什么?
没有下一个了。就这样!
你为开源项目做出了贡献!🎉
现在您可以等待维护人员审核您的拉取请求😄。
感谢阅读!
最后,你也可以在推特上找到我。我们一起交流吧!😊