Linux之父又雙叒開炮了:Github的合并就是毫無用處的垃圾!
Linux之父Linus Torvalds又雙叒開炮啦,批評Github創(chuàng)造了“毫無用處的垃圾合并”。
關(guān)于Linus的這條評論可以在Linux開發(fā)郵件列表的存檔中查看,是針對Paragon Software的創(chuàng)始人兼首席執(zhí)行官Konstantin Komarov的,最近他們將自己的 NTFS 驅(qū)動(dòng)提交到了 Linux 內(nèi)核。
在郵件中,Linus 回復(fù)道:
我注意到其中有一個(gè) GitHub 合并提交,這真的是我特別不想看到的一件事——GitHub 創(chuàng)建了完全沒用的垃圾合并,你永遠(yuǎn)不應(yīng)該通過 GitHub 來合并任何東西。
其實(shí),早在2012年,Linus就解釋過他為什么不使用GitHub進(jìn)行pull requests:
Git自帶了一個(gè)很好的pull-request生成模塊,但是Githubithub卻決定用他們自己的低劣版本來替代,丟棄了所有相關(guān)信息,例如請求他拉取代碼的貢獻(xiàn)者,但 Linus 無法找到這名貢獻(xiàn)者的有效郵件地址。因此,我認(rèn)為Github對這類事情毫無用處。它可以用于托管,但pull請求和在線提交編輯都是純粹的垃圾。
這次的起因是這樣的:Paragon Software的驅(qū)動(dòng)程序提高了與本機(jī)Windows文件系統(tǒng)NTFS的互操作性。提交程序開始于一年多前,但遭到了投訴,稱其2.7萬行代碼太大,無法審查。
在這個(gè)過程中Linus也提供了指導(dǎo),今年7月,Torvalds指出:不要僅僅將代碼發(fā)布到fsdevel列表中,塔最終必須作為一個(gè)實(shí)際的Pull請求提交,Paragon在2021年9月3日周五提交了pull請求。這個(gè)提交PR整體來看并無太大問題,但其中包含了一個(gè)“GitHub 合并提交”。也是這個(gè)Github合并把Linus惹惱了。
Linus使用Paragon公司的commit進(jìn)行了舉例,他表示下面的內(nèi)容是不能被接受的,更不用說還附帶了名字為"github.com"這種虛假的committer 信息。
- Merge branch 'torvalds:master' into master
Linus指出,在理想的世界里,PR應(yīng)該經(jīng)過PGP簽名,并且他可以通過信任鏈直接追蹤到PR提交者
最后Linus還是合并了Paragon軟件公司提交的代碼,他說道:“我現(xiàn)在會(huì)接受這些提交,但在以后的開發(fā)中,你們需要在符合規(guī)則的情況下完成任務(wù)。”