9月7日、海外のテクノロジーメディアPhoronixが「Linus Torvalds Grows Frustrated Seeing 'Garbage' With 'Link:' Tags In Git Commits」と題した記事を公開した。
この記事では、LinuxカーネルのGitコミットメッセージにおける「Link:」タグの乱用に対し、Linus Torvalds氏が強い不満を示し、今後より厳格な対応を取る姿勢を明らかにしたことについて詳しく紹介されている。以下に、その内容を紹介する。
問題視されている「Link:」タグの乱用
近年、Linuxカーネルのコミットメッセージには「Link:」タグが多用されるようになっている。これは主にLinux Kernel Mailing List (LKML) に投稿されたパッチへのリンクを指すものだが、多くの場合、既にコミット内に含まれる情報を重複して示すだけであり、追加の文脈を提供しないため無駄であるとTorvalds氏は指摘している。
実際に、氏はあるブロック関連のプルリクエストを取り込んだ後、不要な「Link:」タグの存在を理由に再度取り消した。その際のコメントでは次のように述べている。
「そして、くそっ、このコミットには『Link:』があったので、なぜこの無意味なコミットが存在するのか説明してくれると期待したのに、結局は同じ情報を指しているだけで時間を無駄にした。
本当にやめてくれ。追加情報があるときだけリンクを入れろ。私は有用なリンクは歓迎するが、実際に目にするリンクの99%は無意味なゴミだ。」
有用なケースも存在する
Torvalds氏は一方で、「Link:」タグそのものを全面的に否定しているわけではない。マルチパートのパッチシリーズにおいてカバーレター(※)へリンクを張る場合など、シリーズ全体の背景や後続の議論を確認する際に役立つと認めている。
「理想的には、パッチシリーズ全体のカバーレターにリンクすることが最も有用だと思う。マージメッセージを読む状況では大局的な背景を探している可能性が高く、その時には初期投稿が意味を持つからだ。」
※カバーレター: 複数のパッチをまとめて投稿する際に添付される説明文であり、シリーズ全体の意図や背景を説明するために用いられる。
今後の対応と課題
Torvalds氏は「Link:」タグの「無思慮な使用」を抑制するための仕組みが必要だと述べた。例えば、不要なリンクを追加すると警告を表示する方法や、議論が活発だったパッチにだけ自動的にリンクを追加するような仕組みが考えられるという。また、AIを使った自動化の可能性についても皮肉を交えつつ触れている。
最終的に氏は、「リンクは有益であるべきで、無意味な重複はやめてほしい」と強調した。Linuxカーネルにパッチを提出する開発者は、今後「Link:」タグを追加する際に、その有用性が認められるかどうかをより慎重に考慮する必要があるだろう。
詳細はLinus Torvalds Grows Frustrated Seeing "Garbage" With "Link: " Tags In Git Commitsを参照していただきたい。