Обновить файлы в релизной папке
Задача: обновить файлы в релизной папке.
Допустим, у меня есть рабочая папка с репозиторием c:\PKM74dev76 Надо взять файлы изменённые в конкретном коммите и перенести в папку c:\PKM74
Если надо получить список измененных файлов:
git diff-tree --no-commit-id --name-only -r <commit-ish>
Что бы получить список всех файлов в коммите:
git ls-tree --name-only -r <commit-ish>
Или что бы получить список файлов между коммитами
git diff --name-only <start-commit-ish>..<end-commit-ish>
Я использую в качестве консоли ConEmu. В последнем варианте что бы выйти из просмотра логов git log: Ввести Q и нажать Enter
Копируем из консоли список путей и сохраняем в файл.
Создаём батник
@echo off
set sourcedir=c:\PKM74_dev_76
set destdir=c:\PKM74
for /F "tokens=1*" %%i in (c:\PKM74_dev_76\Tools\c2d025b.txt) do (
echo F | xcopy "%sourcedir%\%%i" "%destdir%\%%i" /y /q /f
)
Дальше запускаем и файлы копируются.
Возможно, что правильнее использовать ROBOCOPY с файлом настройки «RoboCopy Job» почитать здесь
Комментарии
Отправить комментарий