出品 | OSC開源社區(qū)(ID:oschina2013)這名新手程序員或許無意間創(chuàng)造了一項世界紀錄 —— 他在 GitHub 創(chuàng)建的 PR 讓 40 萬開發(fā)者收到了郵件提醒,并被反復(fù) “轟炸”。
近日,一名開發(fā)者向游戲公司 Epic Games 組織的 GitHub 倉庫提交了一個 PR,內(nèi)容是修改 README 文件中的幾處表述性問題,以及調(diào)整 logo 尺寸。這種沒什么技術(shù)含量的 PR,通常是剛接觸 GitHub 不久的新手程序員在 “練手”,又或是他們包裝自己簡歷的一個手段 —— 畢竟 PR 被合并后即可成為 Epic Games 的 Contributor,這種身份用來填充簡歷至少可以嚇唬一下 HR。然而,這個平平無奇的 PR 卻在剛過去的周末驚動了大約 40 萬使用虛幻引擎 (Unreal Engine) 的開發(fā)者。原因是,這名新手為了讓自己提交的 PR 盡快被合并,他在評論中 '@' 了多個帳號進行提醒,其中'@EpicGames/developers' 觸發(fā)了 reply-all 事件:向加入 Epic Games 組織的所有 GitHub 用戶發(fā)送關(guān)于此 PR 的郵件通知。按照虛幻引擎的政策,要先加入 Epic Games 組織才有權(quán)限訪問項目的源代碼。這時 Epic Games 組織的成員人數(shù)是 398463 名。莫名收到郵件通知的開發(fā)者如果點開了 PR,并且留下評論,那么這些評論也會繼續(xù)以郵件的形式通知給 Epic Games 組織的的開發(fā)者。也就是說,大約 40 萬開發(fā)者會因此收到大量的郵件轟炸。由于需要發(fā)送的郵件數(shù)量太多,導(dǎo)致 GitHub 的郵件通知服務(wù)也出現(xiàn)了延遲。所以開發(fā)者收到郵件的時間會相差較遠,不少開發(fā)者即使在獲知此事后取消了訂閱 PR,也還是會收到在此之前積壓的未發(fā)出的郵件。下圖就是一名被 “郵件轟炸” 的開發(fā)者打開收件箱時的真實記錄:對于這種情況,受影響的開發(fā)者只能手動停止訂閱此 PR 的通知,當然 Epic Games 開發(fā)者發(fā)現(xiàn)該情況后也立即鎖定了 PR。事后,當事人發(fā)表了道歉推文,他表示自己確實不知道在 PR 評論中的 '@' 會影響到 40 萬開發(fā)者。當然,他也不知道自己為了修改表述錯誤而提交的 PR 本身也充斥著許多錯誤。有開發(fā)者調(diào)侃,他可以把這次經(jīng)歷寫到簡歷上:“通過向 Epic Games 的 GitHub 倉庫提交 PR,將 GitHub 變成了發(fā)送騷擾郵件的僵尸網(wǎng)絡(luò)。”也有開發(fā)者認為,GitHub 作為平臺不應(yīng)允許如此寬松的機制:只需要 '@' 一個帳號,就能向幾十萬人發(fā)送郵件通知。https://github.com/EpicGames/Signup/pull/24
https://github.com/EpicGames/Signup/pull/24/commits/4e531d5c5e60ea600cfb51492367ec11d888f422
https://twitter.com/Rohithaditya/status/1533305205697130497
我們創(chuàng)建了一個高質(zhì)量的技術(shù)交流群,與優(yōu)秀的人在一起,自己也會優(yōu)秀起來,趕緊點擊加群,享受一起成長的快樂。另外,如果你最近想跳槽的話,年前我花了2周時間收集了一波大廠面經(jīng),節(jié)后準備跳槽的可以點擊這里領(lǐng)取!推薦閱讀
··································你好,我是程序猿DD,10年開發(fā)老司機、阿里云MVP、騰訊云TVP、出過書創(chuàng)過業(yè)、國企4年互聯(lián)網(wǎng)6年。從普通開發(fā)到架構(gòu)師、再到合伙人。一路過來,給我最深的感受就是一定要不斷學(xué)習(xí)并關(guān)注前沿。只要你能堅持下來,多思考、少抱怨、勤動手,就很容易實現(xiàn)彎道超車!所以,不要問我現(xiàn)在干什么是否來得及。如果你看好一個事情,一定是堅持了才能看到希望,而不是看到希望才去堅持。相信我,只要堅持下來,你一定比現(xiàn)在更好!如果你還沒什么方向,可以先關(guān)注我,這里會經(jīng)常分享一些前沿資訊,幫你積累彎道超車的資本。