开源项目网站(开源网站平台)

【点击查看】低成本上班族靠谱副业好项目 | 拼多多无货源创业7天起店爆单玩法
【点击查看】逆林创业记 | 拼多多电商店铺虚拟类项目新玩法(附完整词表&检测工具)
【点击查看】逆林创业记 | 小白ai写作一键生成爆文速成课
领300个信息差项目,见公众号【逆林创业记】(添加请备注:网站)
什么是开源,为什么要开源
如果你正在考虑开始参与开源,那么恭喜你!世界会感激你的贡献。首先我们来谈谈什么是开源以及为什么我们要开源。
“开源”是什么意思?
当一个项目被开源,这意味着任何人都可以出于任何目的查看开源项目网站,使用,修改和分发你的项目。 这些权限通过开源许可强制实施。
开源是强大的,因为它降低了事物被采纳的障碍,使得我们的想法可以被迅速传播。
接下来我们通过一个例子了解它的工作原理。想象你的朋友组织了一场聚餐,而你带去了一个樱桃派。
相比之下,一个闭源过程就像去一家餐厅订购一个樱桃派。你必须为了吃饼支付费用,餐厅恐怕不会给你他们的食谱。如果你准确地复制了他们的馅饼,并以你自己的名义出售,餐厅可以对你采取措施。
人们为什么把他们的作品开源?
我从开源使用和协作中获得的最有价值的经验之一,就是在我面临许多与其他开发人员相同问题的过程中所建立的联系。
— @kentcdodds, “参与开源对我来说太棒了”
个人或组织为何想要开源一个项目,有各种各样的的原因,例如:
开源并不仅仅限于软件。您可以开源任何事物,从数据集到书本。查看 GitHub Explore 来找找有什么是你可以开源的。
开源是指”免费”吗?
开源最大的吸引之一是它不花钱。 但是,”免费”只是开源的总体价值的一小部分。
因为开源许可证要求任何人可以几乎出于任何目的使用,修改和共享您的项目,项目本身往往是免费的。 如果该项目花钱使用,任何人也都可以合法地复制和使用免费版本。
因此,大多数开源项目是免费的,但”免费”不是开源定义的一部分。 有些方法可以通过双重许可或有限功能间接地为开源项目收费,同时仍然遵守开源的官方定义。
我应该开始自己的开源项目吗?
简单来说,答案是肯定的,因为无论结果如何,开始一个您自己的开源项目来了解开源的工作原理是一个好方法。
如果你从来没有创建过一个项目,你可能会担心人们会说什么,或者是否有人会注意到。 如果这听起来像你现在的状态,别担心,你并不孤独!
开源工作就像任何其他充满创意的活动,无论是写作还是绘画。 向世界分享你的作品会让你提心吊胆,但唯有练习能够让你的感觉变好的方法 - 即使你没有观众。
如果你还不确信,请花一点时间思考你的目标可能是什么。
设置你的目标
目标可以帮助你弄清该做什么,不应该说什么,以及你在哪方面需要其他人的帮助。 首先问自己,我为什么要开源这个项目?
这个问题没有标准答案。 对于一个项目你可以有多个目标,或者具有不同目标的不同项目。
如果你唯一的目标是炫耀你的工作,你甚至可能不需要他人的贡献,甚至在你的 README 中说明这点。但另一方面,如果你需要贡献者,你会投入时间来使文档清晰,好让新的参与者感到欢迎。
在某些时候,我创建了一个自己正在使用的自定义 UIAlertView,我决定将它开源。所以我修改它使其更有活力,并把它上传到了 GitHub。我还写了我的第一个文档,解释给其他开发人员如何在他们的项目中使用它。很可能没有人会去使用它,因为它是一个简单的项目,但我的贡献让我感觉很好。
— @mavris, “自学的软件开发者:为什么开源对我们那么重要”
随着你的项目增长,你的社区可能不仅需要你的代码。回应问题,审查代码和传播你的项目都会成为开源项目中的重要任务。
而你在非编码的任务上花费的时间将取决于项目的大小和范围,你应该准备好作为维护者来自己解决或找人帮助你。
如果你是公司开源项目的一部分, 确保你的项目有它需要茁壮成长的内部资源。 你需要确定谁在启动后负责维护项目,以及如何与你的社区共享这些任务。
如果你需要专门的预算或人员来促进,操作和维护项目,请尽早提出。
当你开始开源一个项目时,确保您的管理流程考虑到您项目周围社区的贡献和能力很重要。不要害怕让那些没有在你的企业中受雇的贡献者参与项目的关键部分 - 尤其如果他们是频繁的贡献者的话。
— @captainsafia, “所以你想开源一个项目,是吗?”
加入其他项目
如果你的目标是学习如何与他人合作或了解开源的工作方式,请考虑为现有项目做出贡献。从你已经使用并喜欢的项目开始。像修复拼写错误或更新文档简单的事也能为项目做出贡献。
如果你不知道如何开始成为贡献者,请查看我们的如何贡献开源指南。
发起你自己的开源项目
即使你没有很好的时间来开源你的工作。你也可以开源一个想法,正在进行中的工作,或是关闭了多年的源码。
一般来说,如果你乐意于他人对你工作的查看和反馈,你就应该开源你的项目。
无论您决定开展项目的哪个阶段,每个项目都应包括以下文档:
作为维护者,这些组件将帮助你交流你的期望开源项目网站,管理贡献并保护每个人的合法权益(也包括您自己的)。他们能够大大增加你积极体验的机会。
如果您的项目在 GitHub 上,则将这些文件放在您的根目录中,并使用推荐的文件名将有助于 GitHub 识别并自动将其显示给读者。
选择一个许可证 (license)
开源许可证保证其他人可以使用,复制,修改和贡献给您的项目,而不会产生不良后果。 它也可以保护您免受繁琐的法律影响。启动开源项目时,请务必包含许可证。
法律工作是非常无趣的。但好消息是,您可以将现有许可证复制并粘贴到存储库中。只需要花这么一点时间,就能保护你的辛苦工作。
MIT, Apache 2.0, 和 GPLv3 都是非常流行的开源许可证, 但你可以选择其他选项.
当你在GitHub上创建新项目时,你可以选择许可证。包括开源许可证将使你的GitHub项目成为开源项目。
如果您在管理开放源码项目的法律方面有其他问题或疑虑,我们已经在这里介绍了。
撰写自述文件
自述文件不仅仅是用于说明如何使用你的项目。他们还可以解释你的项目为什么重要,以及它可以为你的用户做什么。
在您的自述文件中,尝试回答以下问题:
您可以使用自己的 README 回答其他问题,例如处理贡献,项目的目标以及许可证和归属信息。 如果您不想接受他人的贡献,或者您的项目尚未准备好作为产品提供使用,请将这些信息写下来。
更好的文档意味着更多的用户,更少的求助和更多的贡献者,等等。要记住你的读者不是你自己。来到项目中的每个人可能有着截然不同的经历。
— @tracymakes, “这样写给他人看(视频)”
有时,人们会因为觉得项目未完成而不愿意撰写 README,或者他们不希望做出贡献。这些都是写一个 README 的很好的理由。
想要获得更多灵感,请尝试使用 @18F 的 “让 README 可读” 或者 @PurpleBooth 的 README 模板 来撰写一个完整的 README。
当你在根目录中包含一个 README 文件时,GitHub 会自动将其显示在存储库的主页上。
编写你的贡献指南
贡献文件 (CONTRIBUTING 文件) 告诉你的受众如何参与你的项目. 例如,你可以包括以下信息:
除了技术细节, 贡献文件也是一个供你传达对贡献期待的机会, 例如:
使用热情友好的语气并提供具体的贡献建议(例如编写文档或者搭建网站)可以大大提高新人的参与度。
例如,Active Admin 以这样的方式开始它的贡献指南:
首先, 非常感谢你考虑为 Active Admin 贡献帮助。正是你这样的人使 Active Admin 成为一个很棒的工具。
在你项目开始的初期,你的贡献文件可以很简单。你应该经常解释如何提交错误和文件问题,以及关于如何作出贡献的技术问题(例如测试)。
随着时间的推移,你可以将其他常见问题添加到贡献文件中去。写下这些信息意味着问你相同问题的人会越来越少。
想要获得更多有关编写贡献文件的方式,请查阅 @nayafia 的 贡献指南模板 或者 @mozilla 的 “如何构建 CONTRIBUTION.md”。
在你的 README 中链接你的 CONTRIBUTING,这样更多人就能看到他。如果你在你的项目中放入了 CONTRIBUTING 文件,当一个贡献者创建 issue 或者开启一个 pull request 时,GitHub 会自动链接你的文件。
建立行为规范
我们都有过这样的关于重复劳动的经验,无论是维护者试着解释为什么某些事物必须通过某种明确的方式执行,或者是用户…提出一个简单的问题。行为规范成为一个便利的参考和可链接的文档标明你的团队会认真对待具有建设性的讨论。
— @mlynch, “让开源成为一个有趣的地方”
最后,行为准则有助于为项目参与者的行为设定基本规则。这在你为社区或者项目推出一个开源项目的时候尤为有价值。一份行为帮助你促进健康,有建设性的社区行为,这也会减轻你作为维护者的压力。
文章评论(0)