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