V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
ztm0929
V2EX  ›  开源软件

纯新人如何参与开源?

  •  
  •   ztm0929 · 25 天前 · 3024 次点击

    前段时间小红书那则帖子讨论的很热,那个博主后续的晒图分享的行为我们就不讨论了。我更好奇大家自己作为开源作者或者想要贡献的社区成员,大家如何看待新手就错别字之类的发起 PR ?(以及其他此类跟主功能“不搭边”的讨论)
    有个老哥提到的方法我很赞同,留着跟别的功能 PR 一起发起,但老实说,像我们这类完全的新人实现新的 PR 恐怕要等很久。。。

    话说会有作者抗拒别人提起 PR 吗?如果是出于工作量的考虑的话,好像有一些自动化检查的方式。

    根据官方指引,我个人是觉得作为新人发现了任何不妥的地方都可以积极发起 PR 。

    31 条回复    2024-08-22 19:11:54 +08:00
    Anarchy
        1
    Anarchy  
       25 天前   ❤️ 1
    找个几千 star 的个人项目提呗,没那么多流程。
    totoro625
        2
    totoro625  
       25 天前   ❤️ 1
    就像小红书那个博主那样做就行
    没什么不对的
    treexie
        3
    treexie  
       25 天前   ❤️ 5
    正常提出 PR 应该经过以下的流程:
    1 、提出 issue ,描述你的问题
    2 、开源项目相关人员会根据你的描述,标注对应的标签(大部分情况是会有其它热心人员回复后,你的问题得到解决)
    3 、issue 被认可为需要改进或增强等(需要代码变更),后续有相关人员跟进(有些项目会指定处理人)
    4 、若你提出的 issue 被认可但是没人跟进,你可以咨询是否可以由你调整代码,并提出 PR

    针对“错别字之类的发起 PR”这类情况,大部分项目都是建议提 issue 即可,项目维护人员会在后续顺带修改。至于为什么新人会提出这种 PR ,大概率是因为觉得代码入库成为贡献者才算参与,只是提 issue 不算。
    llxvs
        4
    llxvs  
       25 天前 via iPhone   ❤️ 1
    先把项目文档读完
    yanyao233
        5
    yanyao233  
       25 天前 via Android   ❤️ 1
    有啥自己比较熟悉的项目,点开 good-first-issue 看看有啥需求,认领一下做就完了
    ztm0929
        6
    ztm0929  
    OP
       25 天前 via iPhone
    @treexie 学到了👍👍👍
    diagnostics
        7
    diagnostics  
       25 天前   ❤️ 1
    小红书那样没问题,开源社区自己的维护者都没意见,反而没提交过代码的人一顿嘲讽。

    只要不是你天天提这种 typo issue ,就没问题,印度老哥就很多刷 typo 的
    Jinnrry
        8
    Jinnrry  
       25 天前 via iPhone   ❤️ 1
    https://github.com/Jinnrry/PMail/issues

    我的项目,希望别人贡献的我都会标上"welcome pr",项目也配了自动化测试,提 pr 就会自动跑一遍所有测试用例
    KFCVIVO50
        10
    KFCVIVO50  
       25 天前   ❤️ 1
    最简单就是看 issuse ,去解 bug ,提 pr
    monkeyWie
        11
    monkeyWie  
       25 天前   ❤️ 1
    我的开源经验就是先用,用着用着发现了 bug 或者不足就去看源码提 PR ,这不昨天还给鸿蒙提了个 PR: https://github.com/HMS-Core/hms-push-serverdemo-java/pull/24
    storyxc
        12
    storyxc  
       25 天前   ❤️ 1
    可以去 issue 里找问题解决。我第一次提 pr 九是用到的项目有 bug 影响我自己使用了,就顺手改了提了 pr 。
    Reficul
        13
    Reficul  
       25 天前   ❤️ 1
    我感觉一般是两个套路:
    1. 一个是先用,有问题就去提交 issue 然后修;
    2. 另外一种是因为别的原因,比如混圈子,找工作那种为了参与而参与的话,其实从修 typo 开始也没什么。很多人都是从 typo 开始的。

    个人经验就是如果很久没有被理的话,不要内耗怀疑自己,放平常心。如果着急的话可以尝试 slack 或者参与 meeting 现场问下。
    leonfong
        14
    leonfong  
       25 天前   ❤️ 1
    刚好最近做了一个项目,可以查看你以往参与开源的记录( pull requests)

    https://github.com/leon-fong/prs
    Reficul
        15
    Reficul  
       25 天前   ❤️ 1
    另外最好找到同路人,线下可以面基啥的,有问题也可以相互鼓励就会比较容易,说白了开源社区也是个人情圈子。
    dabai091220
        16
    dabai091220  
       25 天前   ❤️ 1
    对于文档来说,错别字修订的 PR 是有必要的
    但是加一个换行符这种仅仅提升 0.0000000000000001% 的可读性的 PR ,还是不要了吧
    搞了个 PR 浪费所有人精力,那个女生可以理解为不懂 PR 流程,V 友就别这么干了,提个 issue 就行了
    churchmice
        17
    churchmice  
       25 天前   ❤️ 1
    说来惭愧,今天才提了一个 PR,还处于 pending 状态,是跟 pcie lane margin 相关的 fix
    126ium
        18
    126ium  
       25 天前 via Android   ❤️ 1
    @totoro625 别人随地大小便你也要学?
    ztm0929
        19
    ztm0929  
    OP
       25 天前 via iPhone
    @126ium 层主 ta 应该跟我是同样的意思,项目仓库本身积极参与互动,至于发帖“分享”的行为估计就见仁见智了,反正我大概率不会专门发个帖🌚
    CEBBCAT
        20
    CEBBCAT  
       25 天前   ❤️ 1
    致 3000 年后的后人:前情提要 /t/1063856
    ztm0929
        21
    ztm0929  
    OP
       25 天前 via iPhone
    @Reficul 非常赞同!👍
    126ium
        22
    126ium  
       25 天前 via Android
    @diagnostics 有意见呀,只不过有意见的被冲了,后面只好不说话了。干嘛学小红书上的仙女随地大小便呢?
    otakustay
        23
    otakustay  
       25 天前   ❤️ 1
    首先你去用一个东西,用出问题了再去解决问题转成 PR ,而不是一开始瞄着我要发个 PR 的目标去。好好当个技术人才吧,别整有的没的
    yzbythesea
        24
    yzbythesea  
       25 天前   ❤️ 1
    参与开源:No
    作者没空,我搞个 PR 帮他修一下,因为我也急着用:Yes
    ztm0929
        25
    ztm0929  
    OP
       25 天前 via iPhone
    @otakustay 所见略同👏
    IvanLi127
        26
    IvanLi127  
       25 天前   ❤️ 1
    这种事看项目维护者的时间和精力了,typo 类的错误感觉凑多点再提交吧,真就一两个的话,除非项目稳定了,不然维护者花时间在审核这类 pr 也有点浪费时间。

    我遇到 typo ,除非重构或者大改这部分代码,不然我东西不会去管... 毕竟多人合作,搞出冲突可能会有很多人受影响
    Frankcox
        27
    Frankcox  
       25 天前   ❤️ 1
    我之前发过这个问题:/t/994243
    一开始也想去找这个简单的文档错误进行修改,但是后来还是没这么做。我的第一个开源贡献是在 github 上,发现了一个和我领域相关的 project ,只有几百个 star ,然后我用下来发现不支持我的一个环境,而且他们项目也有这个问题的 good first issue ,于是就修复了一下提了 PR 。
    Johnathan
        28
    Johnathan  
       25 天前   ❤️ 1
    @yzbythesea #24 非常同意。曾经我也有类似的迷思:/t/882818 这么多年下来,代码开源就是不挣钱的买卖。新人其实并不需要想着一定要急着参与什么已有的开源项目,因为阅读代码、编译使用软件都已经是有门槛的。

    如果只是想成为开源社区的一员,那么应该从兴趣出发。你喜欢前端还是后端,还是 AI 算法?喜欢什么就学什么,你一定能找到某个项目,fork 它,然后改一改,这个过程中你一定能学到东西,即使你没有 PR 或者 issue 。

    如果你想的是让开源成为自己履历或者简历的一部分,那么必须想清楚这是一条苦行僧之路。若是想要贡献代码,那前提是需要完整阅读之前的代码(这一步已经很难了)。如果要长期维护,必然会消耗大量业余时间用爱发电。另外,如果你想造个轮子、写个 demo ,那么对于你的程序设计能力要求也是非常高的,在业余一周不到 20 小时的时间里,开发一个功能完备,逻辑通常,文档完整的开源项目是非常不容易的。
    brave6
        29
    brave6  
       25 天前   ❤️ 1
    如果我空闲并且想写代码的时候,我会去 github 上找个开源项目浏览它的 issues (比较喜欢挑战 bug ),找一个看起来自己能解决的研究研究,找到解决方案就提 PR
    xiri
        30
    xiri  
       25 天前 via Android   ❤️ 1
    我提过的几个小 pr 都是自己在用的项目,遇到问题,一通分析后提个 issue ,然后再自己提个 pr 把 issue 解了(基本都是些冷门项目)
    page470075640
        31
    page470075640  
       25 天前 via iPhone   ❤️ 1
    一般是使用开源项目遇到问题 然后决定要不要参与进去 还有一个思路就是去看 issue 看能不能帮忙解决
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   940 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 19:30 · PVG 03:30 · LAX 12:30 · JFK 15:30
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.