<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/"
    xmlns:atom="http://www.w3.org/2005/Atom" xmlns:media="http://search.yahoo.com/mrss/" version="2.0">
    <channel>
        
        <title>
            <![CDATA[ Li Jia Qi - freeCodeCamp.org ]]>
        </title>
        <description>
            <![CDATA[ freeCodeCamp 是一个免费学习编程的开发者社区，涵盖 Python、HTML、CSS、React、Vue、BootStrap、JSON 教程等，还有活跃的技术论坛和丰富的社区活动，在你学习编程和找工作时为你提供建议和帮助。 ]]>
        </description>
        <link>https://www.freecodecamp.org/chinese/news/</link>
        <image>
            <url>https://cdn.freecodecamp.org/universal/favicons/favicon.png</url>
            <title>
                <![CDATA[ Li Jia Qi - freeCodeCamp.org ]]>
            </title>
            <link>https://www.freecodecamp.org/chinese/news/</link>
        </image>
        <generator>Eleventy</generator>
        <lastBuildDate>Wed, 03 Jun 2026 21:24:12 +0000</lastBuildDate>
        <atom:link href="https://www.freecodecamp.org/chinese/news/author/li-jia-qi/rss.xml" rel="self" type="application/rss+xml" />
        <ttl>60</ttl>
        
            <item>
                <title>
                    <![CDATA[ 如何为开源项目做贡献——入门指南 ]]>
                </title>
                <description>
                    <![CDATA[ 如果你是一名开发者，你可能会遇到“开源”这个词。如果你曾想知道它的全部内容以及如何为其做贡献，那么你来对地方了。 在 2020 年的 Hacktoberfest 期间，我抛开了所有我对如何以及贡献什么的恐惧，并为开源世界做出了我的第一个贡献。 由于对我来说是第一次，我从一些对初学者友好的项目开始，然后慢慢提高。 而现在，如果你是新手，你可能想知道开源到底是什么？ 如何开始？ 你应该期待什么？ 在本文中，我们将涵盖所有这些内容甚至更多。 什么是开源？ 开源是指在许可证的许可下向公众提供可以查看、使用、修改和分发的源代码。 无论是个人、公司、小型企业、非营利组织还是政府机构，开源代码通常符合企业或个人的最大利益。 为开源项目做出贡献是一种学习、教授、分享和积累经验的有益方式。 你应该为开源项目做出贡献的原因有很多，例如：  * 改进你每天使用的软件  * 如果需要，可以找一位导师  * 学习新技能  * 分享你的技能  * 更深入地了解你正在使用的软件  * 建立声誉并帮助你发展你的事业  * 另外，它本身很有趣，会让你感觉很棒 你为开源项目做贡献的原因是什么？ 回复这篇文章 ]]>
                </description>
                <link>https://www.freecodecamp.org/chinese/news/how-to-contribute-to-open-source-projects-beginners-guide/</link>
                <guid isPermaLink="false">60be131c176e4005380a7c24</guid>
                
                    <category>
                        <![CDATA[ 开源 ]]>
                    </category>
                
                <dc:creator>
                    <![CDATA[ Li Jia Qi ]]>
                </dc:creator>
                <pubDate>Mon, 07 Jun 2021 12:30:00 +0000</pubDate>
                <media:content url="https://chinese.freecodecamp.org/news/content/images/2021/06/uide-to-writting-a-good-readme-file--1--1.png" medium="image" />
                <content:encoded>
                    <![CDATA[ <p>如果你是一名开发者，你可能会遇到“开源”这个词。如果你曾想知道它的全部内容以及如何为其做贡献，那么你来对地方了。</p>
<p>在 2020 年的 Hacktoberfest 期间，我抛开了所有我对如何以及贡献什么的恐惧，并为开源世界做出了我的第一个贡献。 由于对我来说是第一次，我从一些对初学者友好的项目开始，然后慢慢提高。</p>
<p>而现在，如果你是新手，你可能想知道开源到底是什么？ 如何开始？ 你应该期待什么？ 在本文中，我们将涵盖所有这些内容甚至更多。</p>
<h2 id="">什么是开源？</h2>
<p>开源是指在许可证的许可下向公众提供可以查看、使用、修改和分发的源代码。</p>
<p>无论是个人、公司、小型企业、非营利组织还是政府机构，开源代码通常符合企业或个人的最大利益。</p>
<p>为开源项目做出贡献是一种学习、教授、分享和积累经验的有益方式。 你应该为开源项目做出贡献的原因有很多，例如：</p>
<ul>
<li>改进你每天使用的软件</li>
<li>如果需要，可以找一位导师</li>
<li>学习新技能</li>
<li>分享你的技能</li>
<li>更深入地了解你正在使用的软件</li>
<li>建立声誉并帮助你发展你的事业</li>
<li>另外，它本身很有趣，会让你感觉很棒</li>
</ul>
<p><em>你为开源项目做贡献的原因是什么？ 回复这篇文章或通过 <a href="https://twitter.com/larymak1">larymak 1</a> 告诉我。</em></p>
<h2 id="">如何为开源做贡献</h2>
<p>为开源项目做贡献并不一定意味着你必须为代码库做贡献。 你可以通过多种不同方式为开源做贡献，例如：</p>
<ul>
<li>你可以在项目文档中添加描述以详细说明某一点</li>
<li>你可以针对特定的项目提供指南</li>
<li>你可以添加示例来展示代码的工作原理</li>
<li>你可以为项目编写教程</li>
<li>你可以为项目添加翻译</li>
<li>你可以回答有关项目的问题（比如在 Stack Overflow 或 Reddit 上）</li>
<li>你可以对其他贡献者提供建议</li>
<li>你可以修复错误并正确地安排项目的工作文件夹</li>
</ul>
<p>所有包括但不限于这些方式都可以为开源项目做贡献。</p>
<h2 id="">为开源项目做贡献之前需要了解的内容</h2>
<p>每个开源社区都是不同的。 每个社区都有不同的人，有着不同的角色和奖励。 他们每个人都有自己的职责和预期贡献。</p>
<h3 id="">一个典型的开源项目会有这些人：</h3>
<ul>
<li><strong>作者</strong> - 创建项目的人。 他们有权为其他成员分配角色以帮助维护项目。</li>
<li><strong>所有者</strong> - 所有者拥有项目的管理所有权（<em>可以与作者为同一人</em>）</li>
<li><strong>维护者</strong> - 这些人负责推动项目的愿景和目标。他们通常是对项目方向负责并致力于改进项目的人</li>
<li><strong>贡献者</strong> - 贡献者以一种或多种方式加入到项目中。他们遵循相同的代码审查流程，遵守相同的代码风格要求等等。</li>
<li><strong>社区成员/用户</strong> - 这些有价值的社区成员可以提供相关功能、错误报告等反馈。</li>
</ul>
<h3 id="">所有开源项目都应该具备的重要元素</h3>
<p>每个开源项目都应该有以下指南和信息：</p>
<ul>
<li><a href="https://choosealicense.com/">License</a> - 如果一个项目没有开源许可证，那它就不是开源的。许可证有助于保护开源贡献者和用户。没有这种保护，企业和精明的开发者通常不会接触该项目。如果你想知道如何获得开源许可证，请单击 <a href="https://choosealicense.com/">此处</a> 以了解更多信息。</li>
<li>README - 这是一本说明如何开始项目的手册。一个好的 README 应该包含潜在的贡献者想要了解的有关项目的所有不同内容。你可以阅读更多关于如何编写一个好的 README 文件 <a href="https://chinese.freecodecamp.org/news/how-to-write-a-good-readme-file/">点击这里</a>。</li>
<li>How to Contribute - 这些指南帮助人们做出贡献并展示需要什么类型的贡献者（<em>这个文件不是必须的</em>）</li>
<li><a href="https://opensource.guide/code-of-conduct/">CODE_OF_CONDUCT</a> - 这是一份文件，用于确定你对贡献者和参与者的行为方式的期望。采纳并遵守行为准则有助于为你的社区创造一个积极的环境。</li>
</ul>
<p>要创建一个开源项目，你需要创建一个环境，可以让人们分享他们的挑战并进行深入讨论。这个可以通过以下工具实现：</p>
<ul>
<li>Issue Tracker（问题追踪器） - 人们在这里讨论与项目相关的问题</li>
<li>Pull Requests（拉取请求） - 这是人们审查正在进行更改的地方</li>
<li>Synchronous Chat Channel（同步聊天频道） - 这是专门供人们分享他们的想法并进行对话的地方（如 Slack、Discord 等）</li>
</ul>
<h2 id="">如何找到你想要贡献的开源项目？</h2>
<p>既然知道了开源项目如何运作，那么是时候找到一个可贡献的开源项目了。</p>
<p>贡献在各个层面都有效——不要过分思考你将如何去做，而是想想你已经使用过的一些项目，如何对它们进行改进提高。</p>
<blockquote>
<p>研究表明，大约 30% 的贡献是文档、错别字修复甚至是翻译。</p>
</blockquote>
<p>如果你是第一次贡献（每个人在某个时候都是这样），这儿有一些网址可以让你开始拥抱开源世界：</p>
<ul>
<li><a href="https://github.com/larymak/Python-project-Scripts">Python Project Scripts</a></li>
<li><a href="https://opensourcefriday.com/">Open Source Friday</a></li>
<li><a href="https://habitica.com/static/front">Hebatica</a></li>
<li><a href="https://pinaxproject.com/">Pinax</a></li>
<li><a href="https://www.firsttimersonly.com/">First Timers Only</a></li>
<li><a href="https://www.codetriage.com/">Code Triage</a></li>
<li><a href="https://24pullrequests.com/">24 Pull Requests</a></li>
<li><a href="https://contributor.ninja/">Contributor Ninja</a></li>
<li><a href="https://github.com/firstcontributions/first-contributions">First Contribution</a></li>
</ul>
<p><em>在开源软件的世界中，问题会很快得到报告和修复。 所以，如果你想解决一个问题，一定要尽快解决它。</em></p>
<h3 id="">如何选择开源项目？</h3>
<p>找到你想要贡献的项目后，让它符合以下标准，以确保它是一个不错的选择：</p>
<p>首先，你需要检查：</p>
<ul>
<li>它有许可文件吗？</li>
<li>最新提交是什么时候完成的？ 是最近的吗？ （也就是说，项目是否在积极维护/工作？）</li>
<li>它有多少贡献？</li>
<li>人们多久提交一次？</li>
</ul>
<p>如果你看到最近有很多活动，那很好，这意味着它有一个活跃的社区来维护它。</p>
<p>其次，你应该继续检查以下内容：</p>
<ul>
<li>有多少未解决的问题？</li>
<li>维护者需要多长时间才能做出回应？ 回应及时吗？</li>
<li>是否对某个问题进行了积极的讨论？</li>
<li>问题是否会定期关闭？</li>
<li>有多少开放的拉取请求？</li>
<li>最新的拉取请求最近多久合并？ 是最近吗？</li>
<li>是否首先审查拉取请求？ （他们应该是）</li>
<li>维护者是否感谢人们的贡献？</li>
</ul>
<p>如果上述所有条件都满足你的需求，那就去做吧，开始为这些项目做贡献。</p>
<h2 id="">在进行开源项目之前需要考虑什么？</h2>
<p>所以你迫不及待地要开始致力于自己的第一个开源项目了。让我们来了解一些可能会帮助你选择项目的方法。</p>
<h3 id="">项目使用什么编程语言？</h3>
<p>任何应用程序背后最基本的技术都是它使用的编程语言。GitHub 上一些最流行的语言包括但不限于JavaScript、Python、Java、Ruby 和 PHP。</p>
<p>你的能力和兴趣也许会契合众多项目，所以选择一个你感觉舒服的项目即可。</p>
<h3 id="">项目类型</h3>
<p>在你确定了你想要使用的语言后，你需要选择你喜欢的项目类型。只需概览一圈并选择一个你感兴趣的主题的项目即可。</p>
<p>项目一旦确定，你一定想要有一番作为。你将通过提交拉取请求来做到这一点。现在让我们来详细说说这个。</p>
<h2 id="pullrequest">如何提交拉取请求（Pull Request）？</h2>
<p>如果你处于这个阶段，已经找到了一个项目，你就可以继续了。让我们来谈谈如何实际提交拉取请求。</p>
<p>首先，什么是拉取请求？ 这是你在 GitHub 中请求更新的方式，也是你将代码合并到另一个分支之前让某人检查你的代码的方式。</p>
<h3 id="pr">提交 PR 的步骤</h3>
<ul>
<li>Fork 存储库<br>
在右上角，你将看到“fork”一词。 单击它，将在你的帐户中创建同一个项目的副本。 URL 将更改为：</li>
</ul>
<pre><code>https://github.com/&lt;YourUserName&gt;/projectname
</code></pre>
<ul>
<li>将其 Clone 到你的本地<br>
在你的电脑上，如果安装了 Git，请打开 CMD 并运行此命令。 如果你还没有 Git，请参阅 <a href="https://git-scm.com/">此处</a>，它将向你展示如何开始使用 Git。 然后继续执行以下步骤：</li>
</ul>
<pre><code>git clone https://github.com/&lt;YourUserName&gt;/&lt;projectname&gt;
</code></pre>
<p>这会在你的本地电脑上创建项目的副本。现在你已经克隆了存储库，我们需要做两件事：</p>
<p>首先，你需要创建一个分支。切换到你电脑上的存储库目录（如果你还没切换的话）：你可以通过以下方式执行此操作：</p>
<pre><code>cd project folder name
</code></pre>
<p>使用 git checkout 命令创建一个分支：</p>
<pre><code>git checkout -b your-new-branch-name
</code></pre>
<p>比如：</p>
<pre><code>git checkout -b lary-mak-blog
</code></pre>
<p>接下来，你需要进行必要的更改并提交这些更改。 在进行更改和添加新文件之后，将这些更改添加到你创建的分支中了。</p>
<p>要查看你做的所有更改，请运行 <code>git status</code> 命令：</p>
<pre><code>git status
</code></pre>
<p>这会显示你最近做的所有更改。现在添加它们，使用 <code>git add *</code> 命令：</p>
<pre><code>git add *
</code></pre>
<p>现在使用 <code>git commit</code> 命令提交这些更改：</p>
<pre><code>git commit -m "&lt;initial commit&gt; "
</code></pre>
<ul>
<li>将更改推送到 GitHub<br>
你可以使用 `git push 命令轻松完成此操作：</li>
</ul>
<pre><code>git push origin &lt;add-your-branch-name&gt;
</code></pre>
<p>用你之前创建的分支的名称替换 <code>&lt;add-your-branch-name&gt;</code>。</p>
<ul>
<li>提交你的更改以供审核<br>
如果你转到 GitHub 上的存储库并刷新页面，你将看到“Compare and pull request”按钮。 单击该按钮。</li>
</ul>
<p>很快，维护者会将你的所有更改合并到该项目的主分支中（除非他们需要你的更改）。 合并更改后，你将收到一封通知电子邮件。</p>
<p>对其他存储库的拉取请求类似于“Push”。 但是，它允许做一些事情：</p>
<p>首先，它允许你为其他存储库做贡献，而无需管理权限来对存储库进行更改。</p>
<p>其次，它允许其他人查看你的更改并提出更正、添加、编辑等建议。</p>
<p>第三，它让管理员可以控制添加到他们项目存储库中的内容。</p>
<h3 id="">在完成第一个拉取请求后，下一步做什么？</h3>
<p>恭喜你！ 刚刚完成了作为开源贡献者经常遇到的标准工作流程！fork -&gt; clone -&gt; edit -&gt; pull request</p>
<p>现在，你可以继续寻找其他项目并做出更多的贡献。 并且一定要留意<a href="https://www.digitalocean.com/">Digital Ocean</a>举办的开源月，这样你就可以参加<a href="https://hacktoberfest.digitalocean.com/">Hacktoberfest</a>并有机会赢取一些很有意思的东西。</p>
<h2 id="">为开源做贡献的好处</h2>
<p>既然你已经了解了如何为开源做出贡献，那么做贡献有好处有什么呢？</p>
<ul>
<li>为开源项目做贡献的人比仅仅使用该技术的人更深入地了解该技术</li>
<li>你可以根据在现实世界中有效和无效的经验，专注于添加和利用对企业有益的功能</li>
<li>它可以建立你的士气和声誉。 为开源项目做贡献的人得到其他社区成员的见解和经验</li>
<li>对开源的贡献可以清晰地了解一个项目的未来</li>
<li>如果你使用 GitHub ，你在该平台上做的很大一部分事情都是公开的。利用这一点来发挥你的优势，在贡献和与其他贡献者交流时，始终做到最好。因为你永远不知道谁在看着你，你的下一个雇主可能就在那里😊</li>
</ul>
<h3 id="">为什么你应该为开源做贡献？</h3>
<p>作为一名开发者，以下我认为你应该为开源做出贡献的原因：</p>
<ul>
<li>它可以帮助你编写更清晰的代码</li>
<li>它可以帮助社区和同行了解你。这种认可可以为你的职业生涯带来很多机会</li>
<li>它可以帮助你了解有关项目的更多信息</li>
<li>它提高了你的编码技能</li>
</ul>
<p>更多有关信息，请阅读 <a href="https://github.com/freeCodeCamp/how-to-contribute-to-open-source">freeCodeCamp 的指南</a>。</p>
<p>感谢你读到这里！</p>
<p>与我联系 <a href="https://twitter.com/larymak1">Twitter</a> | <a href="https://www.instagram.com/nextgencoders/">Insta</a> | <a href="https://www.youtube.com/channel/UCrT1ARRZfLOuf6nc_97eXEg">YouTube</a> | <a href="https://www.linkedin.com/in/hillary-nyakundi-3a64b11ab/">LinkedIn</a> | <a href="https://github.com/larymak">GitHub</a></p>
<p>请分享你的宝贵意见，感谢你的诚实反馈！</p>
<p>享受编程吧❤</p>
<!--kg-card-end: markdown--><p>原文：<a href="https://www.freecodecamp.org/news/how-to-contribute-to-open-source-projects-beginners-guide/">How to Contribute to Open Source Projects – A Beginner's Guide</a>，作者：<a href="https://www.freecodecamp.org/news/author/larymak/">Hillary Nyakundi</a></p> ]]>
                </content:encoded>
            </item>
        
    </channel>
</rss>
