Blame превращается…

Blame из Subversion и аналогичные команды из других систем контроля версий удобны и часто очень полезны. Они позволяют установить автора кода с точностью до отдельной строки. Обычно необходимость в этом возникает когда нужно узнать кто сломал код. Но иногда хочется выяснить кто вообще писал этот код, кто когда-либо изменял его, кто в данный момент в нём разбирается. В такой ситуации возможностей обычного blame’а не достаточно.

И тут на сцену выходит команда blame из текущей dev-ветки MSR Tools. Её вывод выглядит так:

Для указанного файла/директории команда выводит список разработчиков когда-либо работавших с ним/ней. Для каждого разработчика считается сколько строк кода он добавил и удалил, сколько строк его кода осталось, а также возраст оставшегося кода в днях (самого старого и самого нового).

Полученной таким образом информацией можно руководствоваться при распределении задач между разработчиками. Можно отдать задачу тому кто в ней хорошо разбирается и тем самым снизить риски и сроки на пути к очередному релизу. Можно отдать задачу тому кто в ней разбирался раньше, чтобы восстановить его квалификацию если она снизилась.  А можно отдать задачу тому кто раньше над похожими вещами не работал тем самым создавая предпосылки для повышения его квалификации и расширения круга лиц компетентных в конкретной области. Всё зависит от целей, которые Вы преследуете в текущий момент времени.