Есть ли возможность в GITе, получить в архиве(или просто в папке) все фаилы которые изменились с определённой ревизии, в той же фаиловой структуре как и в репозитории?
Те получить патч для тех у кого нет GIT, и чтобы ои могли просто распаковать этот архив.
Пытался разобраться с «git format-patch», но он выдает только в своем формате.
Есть ещё «git archive -o update.zip» — но он выдает все 5000 файлов.
Решение —
git diff --name-status commit1 commit2 | awk '{ if ($1 != «D») print $2 }' | xargs git archive -o output.zip HEAD
где commit1 commit2, указывается между какими комитами нужны изменения, либо указать хешкод одного комита начиная с которого и до HEAD будут в архиве измененные фаилы.
git diff --name-status — выдает список фаилов которые были изменнены, а git archive — загоняет это дело в архив. Что делает awk '{ if ($1 != «D») print $2 }' — я так и не понял.
Спасибо Chaitanya Gupta из stackoverflow.com, за практический мгновенный ответ.
По вашим ссылкамм не смог найти то что мне нужно.
Там описывается создания фаил-патча который приминим только там где есть GIT, моя бабушка умеет только распаковывать архив, заменять фаилы, и она ждёт-недождется обновления от своего любимого внука.