这位老哥提交了一个12万行代码的PR,程序员看了都说LGTM

前几天,有位老哥向开源项目OpenCut提交了一个12w行代码的pr,被人发现分享在国外的论坛,引发大量的围观,观摩地址

程序员看了这个pr都玩起了梗,高呼LGTM

LGTM是啥意思呢,就是类似我们的拼音缩写,完整为(Looks Good To Me),意思是我看着很好,在PR审查也意味着可以合并。

这里也分享一些其他缩写:

  • PR: Pull Request 代表拉取分支修改后的和合并请求
  • CR: Code Review 代码审查
  • CC: Carbon Copy 抄送
  • RFC: Request For Comment 征求意见或评论
  • SGTM: Sounds Good To Me 意思和LGTM差不多
  • WIP: Work In Progress 意思我还在开发中,不要合并,你可以看看部分代码
  • PTAL: Please Take A Look 请看一眼,请求维护者过来审核
  • TBR: To Be Reviewed 提醒维护者审查代码
  • TL;DR: Too Long; Didn't Read 太长了,别看了,提醒代码过长
  • TBD: To Be Done 还没做,或者未完成

被围观了之后老哥还是很有热情,也开始删减自己的代码并且还在不断的提交代码

甚至有程序认真地看了这个pr并提出意见

从这里可以看到,老哥为啥会产生如此大的提交。老哥的代码都是通过Ai修改生成的,也是Vibe Coding(氛围编程),氛围编程主要由AI完成。开发者向AI提出需求,只要代码能正常运行,开发者便不经详细检查直接应用。当代码出问题时,要求AI修改。

有人统计了整个pr,总共包含12.8万行代码,但大部分是AI生成的文档(8.6万行,占 68%)。此外,它还包含9万行AI生成的测试代码(占 7%)。因此,实际代码只有3.2万行(占 25%)。并且文档也不是易懂,可能有很多的中文注释的原因。也存在一些bug。

当然,合并这个巨大的pr显然是不可能的,这个老哥也是在最后关闭了合并请求

这个老哥始终都是积极的,标题也是 "想帮忙但需要一些帮助",大伙也是在积极的讨论,同时这件事也给了我们很多的思考:

如何正确的提交pr

  1. 查看贡献指南,一般都会有个Contributing Guide的文档,了解具体的开发环境,操作步骤等
  2. fork仓库代码并创建一个修改的分支
  3. 对代码进行修改,一般是实现一个新功能或者修复一个bug,并添加相应的单元测试等代码
  4. 提交代码,使用规范的git commit message,可以参考Angular的规范
  5. 提交pr,等待维护者review和合并即可

提交的代码维护者都会进行审查,如果代码可读性很差或者代码很大无疑增加了审核的成本,所以也大大降低了合并通过的可能性,所以尽量保持小范围的修改和详细的文档和完整的单元测试。

该如何使用AI

前不久和朋友吃饭,他说领导叫他一天完成一个网站,他说一天完成不了,领导说你不会使用AI生成吗,他无奈的去用AI生成了,结果生成的代码并不能完整运行,最后还是自己完成。在现在的AI风潮下,确实很多人形成了有了AI我也可以随意开发的意识,我也看到很多文章"使用xxx一个小时/一天开发一个xxx",无不提供一种有了AI开发应用就成了很简单的事情,但是一看无非也是一些小工具类的应用。这种小工具应用的可容忍程度还是比较高的,因为功能还是比较简单,并且有很多可替代方案,所以用AI去生成也是比较合适的,但我们还是得正确的认识AI。

AI不能完全的提高我们的编程质量,但可以提高我们的编程的效率。AI能做的是能够快速帮我提供一个思路与方向,我们应该把AI当做一个工具,而不是完全开发的替代。但是,这也是AI工具开发者的一种挑战,如何产出高质量代码应该是AI工具研发的主要方向。

相关推荐
fanstuck28 分钟前
Prompt提示工程上手指南(六):AI避免“幻觉”(Hallucination)策略下的Prompt
人工智能·语言模型·自然语言处理·nlp·prompt
zhangfeng11331 小时前
win7 R 4.4.0和RStudio1.25的版本兼容性以及系统区域设置有关 导致Plots绘图面板被禁用,但是单独页面显示
开发语言·人工智能·r语言·生物信息
DogDaoDao2 小时前
神经网络稀疏化设计构架方法和原理深度解析
人工智能·pytorch·深度学习·神经网络·大模型·剪枝·网络稀疏
逛逛GitHub2 小时前
推荐 4 个 yyds 的 GitHub 开源项目
github
西猫雷婶2 小时前
pytorch基本运算-Python控制流梯度运算
人工智能·pytorch·python·深度学习·神经网络·机器学习
说私域2 小时前
新零售第一阶段传统零售商的困境突破与二次增长路径:基于定制开发开源AI智能名片S2B2C商城小程序的实践探索
人工智能·开源·零售
寒月霜华3 小时前
机器学习-模型验证
人工智能·深度学习·机器学习
救救孩子把4 小时前
3-机器学习与大模型开发数学教程-第0章 预备知识-0-3 函数初步(多项式、指数、对数、三角函数、反函数)
人工智能·数学·机器学习
CareyWYR4 小时前
每周AI论文速递(250908-250912)
人工智能
张晓~183399481214 小时前
短视频矩阵源码-视频剪辑+AI智能体开发接入技术分享
c语言·c++·人工智能·矩阵·c#·php·音视频