大家是怎么加入(不是创建)自由开源项目的呢

标题中的加入,以 GitHub 为例,指的是成为某个 repo 的 collaborator 或某个 organization 的 member;而在其他自由开源项目的协作体系下可能有不同对应。

例如,我在 2024 年加入了 GitHub - end-4/dots-hyprland: Usability-first dotfiles · GitHub ,起因是我提交了几个 PR 之后,为了方便后续继续参与,找作者要了写入权限。而最近加入的两个项目,一个是在我提交 PR 之后作者什么也没说就把我加为 collaborator,另一个则是在我事先提交过一个 PR(已经合并)并于其他人的 PR 下讨论的时候,作者突然邀请我加入 organization。

我不是科班出身,参与自由开源项目纯粹是兴趣爱好,而加入其中更是机缘巧合,至今也只加入过一个 organization。而我有时浏览其他人的 GitHub 主页,总会发现很多人至少在一个或多个 organization 里,似乎这是件很常见的事。所以,我对这背后的故事也挺好奇的。

1 个赞

差不多,我也。

如果“加入”的定义相比成为项目 member 或 collaborator 更广一点的话,那我倒是有点经历可以分享一下。我这里对“加入”的理解是“了解并参与到项目的开发或者维护中”,或者简单点说就是和开发者讨论过或者写过提交过代码。

就参与到开发中,我大部分(也没多少)的经历应该是了解到项目-使用软件-发现问题-和开发者沟通,根据反馈来判断是否参与。这个过程应该很自然,拿 Emacs 本身来说的话,我从 19 年开始用 Emacs,但 23 年才第一次向 bug-gnu-emacs 提交第一个 bug 报告,这期间在断断续续使用 Emacs 的过程中顺便逐渐了解和熟悉 Emacs 本身的代码。之后也断断续续提过一些 bug 和一些简单的 bug 补丁,然后时不时去 emacs-devel 或 bug-gnu-emacs 上看看最新的讨论。不过就权限来说的话,应该没有到 LZ 提到的 member,毕竟仅仅是提交补丁。

其他的可能是一点小打小闹,比如看到某个玩具项目有意思就和作者简单聊一下。

3 个赞

你可以把组织看成rpg里的公会,个人有一个隐形的贡献值。如果你的码又多又好,公会老大肯定会觉得,哇塞,这么厉害,得把你变成maintainer才能榨干你。

有一种例外:原owner维护一个包很久了,正愁没人甩手,看你这么喜欢就顺手送你了。

3 个赞

这个比喻很生动有趣,谢谢。

看了一下我加入的组织似乎挺多的。除了自己参与创建的,也就两类:

一个是刷脸,和项目成员本来就认识。比如本来就和管理员有朋友关系,他想拉就拉了。或者是有认识的成员推荐。

另一个就是正经的参与路线。首先你对这个项目有浓厚兴趣,是个高级用户,多刷PR,多在社区里活跃,然后逐渐和管理员搞熟关系,最后管理员觉得你靠谱就会拉你, 甚至给个很高的权限 。其实本质上就是把「不能刷脸」的情形给规约成「可以刷脸」 XD

哪有那么多技术门槛,其实都是人情世故

3 个赞