мета-данные страницы
Различия
Здесь показаны различия между двумя версиями данной страницы.
Следующая версия | Предыдущая версия | ||
dw_tformloghg [17.04.2020 11:56] Анисютин создано |
dw_tformloghg [05.11.2020 16:21] (текущий) |
||
---|---|---|---|
Строка 1: | Строка 1: | ||
====== Лог изменений модулей ====== | ====== Лог изменений модулей ====== | ||
+ | |||
+ | Форма **"Лог изменений модулей"** открывается из главного меню программы кнопкой **"Лог изменений модулей"**.\\ | ||
+ | Форма отображает разработчиков, которые внесли последние изменения файл проекта.\\ | ||
+ | {{:pasted:20200418-092736.png}}\\ | ||
+ | |||
+ | ==== Информационные поля ==== | ||
+ | |||
+ | * **Количество записей в логе** - общее количество записей выгруженных в файл лога hg.log.\\ | ||
+ | * **Количество записей в объекте** -количество записей в объекте меньше чем "Количество записей в логе" так, как иключаются повторные записи для модулей и исключаются файлы типа dfm.\\ | ||
+ | * **Папка проекта Mercurial** - Папка проекта Mercurial из настройки **HGWrk** | ||
+ | |||
+ | ==== Поля в таблице ==== | ||
+ | |||
+ | * **Ревизия** - номер версии репозитория. | ||
+ | * **Дата** - дата ревизии. | ||
+ | * **Модуль** - наименование файла исправленного модуля относительно папки репозитория. | ||
+ | * **Разработчик** - программист, который вносил изменения. | ||
+ | * **E-MAIL** - E-MAIL программиста | ||
+ | * **Ветка** - всегда **default** | ||
+ | |||
+ | ==== Кнопки ==== | ||
+ | |||
+ | * **Импорт лога изменений модулей** - повторно загружает значения в объект **LogHG**. | ||
+ | |||
+ | ==== Импорт лога изменений модулей ==== | ||
+ | |||
+ | * Выгрузка во временный файл лога изменений модулей hg.log. | ||
+ | * Загрузка лога изменений модулей из временного файла hg.log в объект LogHG, который отображается на форме | ||
+ | |||
+ | === Выгрузка в файл лога изменений модулей === | ||
+ | |||
+ | Mercurial, он же Hg — система управления версиями. | ||
+ | Консольная программа hg.exe позволяет выгружать отчеты в текстовый файл с различным содержанием. | ||
+ | Нас интересует информация о том кто последний исправлял файл с предупреждением. | ||
+ | Для этого создается и запускается командный файл **hglog.cmd** с командой\\ | ||
+ | <code> | ||
+ | cd /D <HGWrk> | ||
+ | <HGExe> log -l 100000 -b default -T "{rev}:::{branch}:::{date(date,""%%d.%%m.%%Y"")}:::{author}:::{file_mods}\r\n" --pager false >hg.log | ||
+ | </code> | ||
+ | где | ||
+ | * **<HGWrk>** - Папка проекта Mercurial, там где находится папка .hg, значение берется из настройки **"HGWrk"** | ||
+ | * **<HGExe>** - Исполняемый файл Mercurial, значение берется из настройки **"HGExe"** | ||
+ | |||
+ | * **c:\Program Files\TortoiseHg\hg.exe** - исполняемый файл Mercurial | ||
+ | * **log** - операция - формировать отчет | ||
+ | * **-l 10000** - выгружать 10000 строк | ||
+ | * **-b default** - выгружать данные только по ветке default | ||
+ | * **-T "{rev}:::{branch}:::{date(date,""% %d.% %m.% %Y"")}:::{author}:::{file_mods}\r\n"** - список полей для выгрузки | ||
+ | * **--pager false** - не разбивать отчет на страницы | ||
+ | * **d:\__hglog0.log** - файл с логом изменений | ||
+ | |||
+ | **Пример hglog.cmd** | ||
+ | |||
+ | <code> | ||
+ | cd /D E:\_Projects\Agbis.dxe\ | ||
+ | "c:\Program Files\TortoiseHg\hg.exe" log -l 10000 -b default -T "{rev}:::{branch}:::{date(date,""%%d.%%m.%%Y"")}:::{author}:::{file_mods}\r\n" --pager false>E:\_Projects\AgbisTest\AT_DelphiWarnings\exe\hg.log | ||
+ | </code> | ||
+ | |||
+ | В результате получается таблица вида\\ | ||
+ | <code> | ||
+ | ... | ||
+ | 10014:::default:::14.04.2020:::Нестеров Егор <nesterovegor55@gmail.com>:::ForAll/BusinessLinks.pas Him/QuestionnaireSurvey.pas | ||
+ | ... | ||
+ | </code> | ||
+ | Поля отделяются друг от друга **":::"**. Рассмотрим третью строку:\\ | ||
+ | - **10014** - номер ревизии | ||
+ | - **default** - наименование ветки репозитория | ||
+ | - **14.04.2020** - дата ревизии | ||
+ | - **Нестеров Егор %%<nesterovegor55@gmail.com>%%** - разработчик, который вносил изменения и его e-mail | ||
+ | - **ForAll/BusinessLinks.pas Him/QuestionnaireSurvey.pas** - список измененных модулей, разделенных пробелом | ||
+ | |||
+ | === Загрузка лога изменений модулей из файла === | ||
+ | |||
+ | При загрузке в объект заполняются поля | ||
+ | * Rev - номер ревизии | ||
+ | * Branch - наименование ветки репозитория | ||
+ | * DateRev - дата ревизии | ||
+ | * Devel - разработчик, который последний вносил изменения | ||
+ | * Mail - e-mail разработчик | ||
+ | * PasFile - измененный модуль | ||
+ | |||
+ | Из списка записей исключаются | ||
+ | * Повторные описания файлов (оставляются только записи о последней корректировке файла), | ||
+ | * Файлы типа .dfm | ||
+ | |||
+ | ===== Дополнительная информация ===== | ||
+ | |||
+ | * [[:dw_TFormLogDelphi|Лог компиляции проекта]]\\ | ||
+ | * [[:dw_TFormWarningTypes|Типы предупреждений]]\\ | ||
+ | * [[:dw_TFormOrder|Поручения разработчикам]]\\ | ||
+ | |||
+ | [[develop:at_delphiwarnings|Назад]]\\ | ||