Іноді було б добре сказати:
(git|svn|hg|etc) diff Foo.c:main
(git|svn|hg|etc) log log Foo.c:main
щоб побачити зміни, внесені до певної функції у вихідному файлі з моменту останнього введення чи повну історію змін. Моє запитання двояке:
- Чи існує щось, що робить це?
- Чи буде такий інструмент практичним? Потрібно було б виконати простий аналіз коду при кожному перегляді, щоб порівняти різні версії функції; хіба накладні витрати будуть занадто великими, щоб він був ефективним?