А разве современный diff всё тот же, что и 40 лет назад? Вроде большинство софта, который доводилось видеть, умеет находить сдвинутые блоки. Некоторые даже пытаются анализировать код на основе знания о языке в файле.
Умение находить сдвинутые блоки я видел в ClearCase 30 лет назад, но, видимо, оно было запатентовано, поэтому тогда никто больше так не делал, а потом все забыли - потому что в те времена систем code reviews не было, и умность диффа помогала разве что экономить место в базе, а внешняя память быстро стала дешевая.
Основная проблема не в том, как находить, а как это дело красиво визуализировать.
Вот. Ты же знаешь, я вырос на всех этих diff, awk, grep и прочем, пальцы до сих пор в командной строке все помнят, хотя активно я этим уже лет 20+ не пользуюсь. Но молодое поколение до сих пор вздрагивает, когда я судорожным сокращением кольцевой мускулатуры выдаю какую-то дикую последовательность команд с правильным результатом.
Но за все эти тяжелые годы я все больше запускал все инструменты из emacs. Я его в середине 80-Х подпилил под себя тоннами лисповского кода и понял, что всегда предпочитал именно оттуда все брать. И именно из-за красивой (для тех времен) визуализации. Так вот, diff в emacs был очень хорош, можно было очень быстро и красиво видеть все различия и быстро их упромысливать.
А вот как сейчас народ всем этим пользуется, я совершенно не представляю. Наши динозавровские техники еще в ходу? Или мы уже тоже как те древние греки, погружаемся в пучину забвения?
Кстати, не знаю, про какие системы code review ты говоришь, но я железной рукой загонял человечество к счастью еще в бывшей нашей державе.
Для того, чтобы распознать контекстную замену foo на bar, и именно так и обозначить в описании изменения, подлежащего ревью, вместо листинга сотен строк диффа, где это произошло, ИИ не нужен.
Comments 15
Reply
Основная проблема не в том, как находить, а как это дело красиво визуализировать.
Reply
Основная проблема не в том, как находить, а как это дело красиво визуализировать.
С этим полностью согласен. Давно заметил что качество визуализации и удобство интерфейса - решающие факторы при выборе диффа.
Reply
Но за все эти тяжелые годы я все больше запускал все инструменты из emacs. Я его в середине 80-Х подпилил под себя тоннами лисповского кода и понял, что всегда предпочитал именно оттуда все брать. И именно из-за красивой (для тех времен) визуализации. Так вот, diff в emacs был очень хорош, можно было очень быстро и красиво видеть все различия и быстро их упромысливать.
А вот как сейчас народ всем этим пользуется, я совершенно не представляю. Наши динозавровские техники еще в ходу? Или мы уже тоже как те древние греки, погружаемся в пучину забвения?
Кстати, не знаю, про какие системы code review ты говоришь, но я железной рукой загонял человечество к счастью еще в бывшей нашей державе.
Reply
Reply
Reply
Reply
Reply
https://github.com/Wilfred/difftastic
Reply
Reply
Leave a comment