HgEasyReports или Как немного упростить себе жизнь

Одним летним вечером мне надоело писать отчеты о проделанной работе, просматривая историю изменений в репозитории Mercurial. Подобные рутинные операции очень утомляют и демотивируют, поэтому я решил, что необходимо автоматизировать этот процесс. Что из этого вышло — читаем далее 😉

Ничего сложного выдумывать не хотелось, поэтому я реализовал достаточно простую и удобную в использовании консольную утилиту на php, которую можно использовать как непосредственно, так и интегрировать в IDE PHPStorm (и другие ide которые поддерживают внешние утилиты).

 Что входит в состав утилиты:

Как вы можете видеть утилита включает в себя 3 файла: конфигурационный файл, phar архив с самой утилитой и иконку для добавления в меню IDE.

Конфигурация:

Как ее установить и использовать

Установка утилиты в PHPStorm достаточно простая:

  1. Скачайте zip-архив с утилитой HgEasyReport (github)
  2. Распакуйте его содержимое в любую удобную для вас директорию (в моем случае это директория D:\projects\php\HgEasyReport\)
  3. Теперь утилиту необходимо подружить с PHPStorm, для этого в IDE открываем настройки  File > Settings (Ctrl + Alt + S) и переходим на вкладку  External Tools и нажимаем на иконку добавления новой утилиты.Далее необходимо указать путь к PHP и утилите, в моем случае это :

В поле Group — впишите любое название, это будет названием группы в которую будет добавлена утилита.

В поле Program укажите путь к PHP

В поле Parameters укажите следующие параметры:

$ProjectFileDir$ — это переменная IDE которая содержит путь к проекту;

Параметр today — означает, что утилита будет извлекать из репозитория только изменения за текущий день (также доступно другое значение этого параметра all при указании которого будет извлекаться вся история)

Утилита добавлена и теперь она доступна в IDE:

В Главном Меню

и в контекстном меню

Но для большего удобства можно добавить утилиту в главный тулбар в виде иконки:

Если вы указали правильно пути к утилите и Ваш текущий проект находится под управлением Mercurial, то в результате запуска утилиты вы получите приблизительно такой результат:

UPD: Репозиторий с исходным ко