«Хватит засорять код!» — Линус Торвальдс грозит отклонять pull request'ы за мусорные ссылки

«Хватит засорять код!» — Линус Торвальдс грозит отклонять pull request'ы за мусорные ссылки

В коммитах должны оставаться только ссылки с реальной пользой.

image

Линус Торвальдс устал видеть в сообщениях к коммитам ядра Linux строку «Link:», которая нередко не несёт дополнительной информации, и пообещал строже относиться к таким «бесполезным» ссылкам. По его словам, всё чаще разработчики добавляют «Link:» на то же самое письмо с патчем в LKML, которое уже и так лежит в истории изменений. Это не помогает понять мотивы правки и лишь отвлекает тех, кто пытается найти контекст. «Добавляйте ссылку только если там есть дополнительные сведения», — подчеркнул Торвальдс , объяснив, что не будет принимать pull-request’ы, в которых «Link:» ведёт на дубликат содержимого без новой пользы.

При этом он поддерживает ссылки в тех случаях, когда они действительно упрощают навигацию: например, для многокомпонентных серий патчей, чтобы быстро перейти к сопроводительному письму. По его мнению, такая ссылка логичнее смотрелась бы в сообщении о слиянии, где читатель как раз ищет «большую картину» и причины изменений, а не в каждом отдельном коммите.

Торвальдс предложил как минимум «обескураживать механическое использование» — вплоть до заметного предупреждения, что ссылка может добавлять шум. В более идеальном варианте это могла бы быть автоматизация: включать «Link:» только если вокруг конкретного патча была реальная дискуссия. Он упомянул, что инструменты вроде b4 уже проходят по цепочке писем, собирая метаданные вроде Acked-by, и теоретически могли бы оценивать «оживлённость» обсуждения. Даже если разговор оказался малополезным, ссылка на ветку обсуждения, считает он, раздражала бы гораздо меньше, чем ссылка на одиночное письмо без откликов.

Итог для авторов патчей прост: если в «Link:» нет новой ценности — отчёта об ошибке, разборов, нетривиальной переписки, объясняющей необходимость правки, — лучше её не добавлять. Задача ссылки — экономить время читателя, а не тратить его.