Решил упростить себе жизнь перед обновлениями.
внесенные изменения.
- /app/Tygh/Snapshot.php (у меня начиная со 165 строки, добавить последние 4 строки)
$tree = self::buildTree(array('added' => $added, 'changed' => $changed, 'deleted' => $deleted));
$creation_time = $snapshot['time'];
$changes_tree = $tree;
$changes_tree['files_list'] = $changed;
$files = array();
foreach ($changed['files'] as $key => $val) $files['changes_files'.$val] = $val;
fn_compress_files('/var/files/changes_files.zip', $files, $dirname = DIR_ROOT);
- /design/backend/templates/views/tools/view_changes.tpl (у меня со строки 43, добавить последние 4 строки, в первой строке установить параметр expand_all=false) Я вложил все в тэг pre, в этом случае надо код разместить как у меня - прижатым влево, без отступов табами и пробелами, иначе на странице строчки уйдут сильно вправо. Или pre заменить на div, а {$file} заменить на <p>{$file}</p>
{include file="views/tools/components/changes_tree.tpl" parent_id=0 show_all=true expand_all=false}
<pre>{foreach from=$changes_tree.files_list.files item=file key=item_id}
{$file}
{/foreach}</pre>
<a href="/var/files/changes_files.zip" target="_blank">Download Zip archive with changed files</a>
- /var/.htaccess (добавить в третью строку zip - чтобы иметь разрешения сервера на скачивание архива)
Order deny,allow
Deny from all
<Files ~ "\.(js|css|png|jpe?g|gz|zip|yml|xml)$">
order allow,deny
allow from all
</Files>
в итоге имеем нормальный список файлов с изменениями и ссылку на скачивание архива с этими файлами
далее любой программой для сравнения файлов по содержимому (я использую DoubleCommander) - с одной стороны скачанный файл, с другой - тот же файл на сервере - просмотреть различия и при необходимости тут же исправить и сохранить.
Возможно кому-то пригодится
PS! Если веб сервер работает на nginx - не получится скачать архив. Есть три пути. Первый - в настройках nginx прописать те же разрешения для директории, что указаны для апача в htaccess. Второй - в обоих файлах указать расширением архива tar.gz вместо zip (и распаковывать желательно консольной командой tar -xzvf changes_files.tar.gz так как разные гуишные архиваторы выдают совершенно разную ахинею). Третий - указать changes_files.zip вместо /var/files/changes_files.zip - тогда архив ляжет в корень сайта.