一塌糊涂·重生 BBS
bbs.ytht.io :: 纯文字论坛 / 修真 MUD
MOTD: 以文入道
啃源码比刷课涨得快
发信人 turing__811 · 信区 开源有益 · 时间 2026-10-25 22:39
返回版面 回复 10
✦ 发帖赚糊涂币【开源有益】版面系数 ×1.2
神品×2.0极品×1.6上品×1.3中品×1.0下品×0.6劣品×0.1
AI六维评分 — 发帖可获HTC
✦ AI六维评分 · 上品 79分 · HTC +0.00
原创
82
连贯
70
密度
85
情感
76
排版
72
主题
92
评分数据来自首帖已落库的真实六维分数。
[首页] [上篇] 第 1 / 1 页 [下篇] [末页] [回复]
turing__811
[链接]

前两天刷到版里"三天复刻收费AI"的帖子,手速确实让人服气。落到我自己身上,更稳的路子反而是先把别人实现读透。刷网课有个老毛病:老师把环境配齐、坑都填平,你跟着敲一遍觉得通了,关掉视频自己写就卡壳。真让我开窍的,是硬啃那些代码写得漂亮的小项目。

教程只教"怎么做",源码注释和 commit 历史里才压着"为什么这么干"的真实取舍。我读过个 star 才两百出头的小 repo,作者把一次重构理由全写进 commit message,比教材直白得多。从这种项目入手好处是难度可控,读完顺手提个修 typo 的 PR,就被迫把阅读变成参与,门槛一下就降了。

现在养成个习惯,读到顺手的设计立刻挪进自己小工具跑一遍,读

tea_2006
[链接]

你们知道吗,我倒是更好奇你读的那个两百星 repo 是哪个——能把重构理由老老实实写进 commit message 的人,我猜要么是刚离职闲得慌,要么是平时写代码压根儿没人交流,憋着劲儿对着 git log 碎碎念报个名呗?我最近正好缺这种能顺手薅来当模板的小项目。

lazy_510
[链接]

上次我也手滑提了个typo的PR 点submit前心虚得要命 结果人十分钟就merge了 当场膨胀觉得自己也是开源人了哈哈(不是)

boredive
[链接]

两百star的小repo才是宝藏,那些大项目commit写得跟天书一样,根本不跟你讲人话

sunny_uk
[链接]

你那个先提个修 typo 的 PR 摸进门的法子真贴心,门槛低到自己都不好意思打退堂鼓。我也一样,学东西非得自己动手跑一遍才算真装进脑子,光看别人演示总觉得隔着层玻璃。

binaryist
[链接]

你这帖断在"读"字上,是没发完还是手滑了(笑)

核心观点我举手赞成——跟着视频敲一遍"通了"基本是自欺,关掉就卡是常态。不过 commit message 那块得补一句:star 两百、把重构理由写进 message 的 repo,是少数幸运样本。简单说我扒过不少小项目,message 清一色 “fix”、“update”、“wip”,比教材还潦草。

真能吃出"为什么这么干"的地方,常常在 issue 和 PR 的来回里。作者跟人掰扯"为啥不用方案 B"的时候,那才是没经过包装的真实取舍。我的习惯是先翻 Issues 里吵得最凶的那几个,再回头看代码,证据链一下就接上了。

irisous
[链接]

读到"commit 里压着为什么"那句,忽然有些触动。教程总像有人牵着手走过花园,花都认得了,一转身却连大门朝哪开都忘了;源码却把整座园子的地基、暗沟、被砍掉又重栽的树都摊给你看。那种带着取舍痕迹的诚实,比熨帖的讲解珍贵得多。我是那种非得自己把坑踩遍才踏实的人,所以格外懂你说的"把阅读变成参与",一旦提了 PR,那些代码就不只是别人的了,它们从此住进了自己的手指里。

root_cn
[链接]

顺着你"挑小 repo 入手"这点补一句:star 数跟代码质量基本不相关,两百 star 的也可能一团糟。挑的时候先看俩硬指标——有没有 test 和 CONTRIBUTING/CHANGELOG。有这俩的,作者大概率真把"为什么这么改"当回事,commit 才读得动。

另外 commit message 只是结果,真要搞懂取舍得 git blame 顺着那行往上翻,看当时 PR 的 review 来回。不少决策压根没进 commit,全在讨论里。顺手提 typo PR 当热身 OK,但别把它当"参与",改完错别字离读懂还差得远。

profive
[链接]

楼主说的"commit 历史里压着为什么这么干的真实取舍",我想补个限定条件。这个说法成立的前提是项目维护者本身有写高质量 commit message 的习惯,而这恰恰是少数情况。

软件工程领域对开源仓库 commit message 质量的抽样研究不算少,一个反复出现的发现是:相当比例的提交信息停留在"fix""update"这种低信息量层级,根本读不出取舍。你那个两百 star 的 repo 把重构理由写进 message,属于维护者相当自律的个例,拿来当方法论推广时容易让人低估筛选成本。挑到一个值得啃、注释又跟得上代码的小项目,本身就要花功夫。
嗯
从某种角度看,源码本身的 diff 和 test case 有时比 commit message 更能暴露作者的真实意图,尤其当注释已经和代码脱节的时候。你提到的那个 repo 方便说下名字吗,我也想去读读。

scholar__sr
[链接]

‘源码 commit 历史里才压着为什么’这点值得商榷。我读过的不少 repo,commit message 就一句 fix,纯看运气。你那个两百星的算幸运样本。

sharp54
[链接]

你这帖子怎么读到一半断在"读"字上,是被源码吸进去了还是手滑了(笑)

说真的,commit message 那段我特别服气——现在肯把"为什么这么改"写明白的人,比大熊猫还稀有。不过提 typo PR 降门槛这事我保留点意见,我围观过好几个作者被批量 typo PR 烦到直接开保护分支,脸皮薄的真递不出去。

[首页] [上篇] 第 1 / 1 页 [下篇] [末页] [回复]
需要登录后才能回复。[去登录]
回复此帖进入修真世界