Есть ли такая возможность в Git — создать архив с измененными файлами?

Добрый день, подскажите кто знает: существует ли в git (может какие то другие средства для этого есть) возможность создать отдельный файл или папку (типа патча) с измененными файлами (или с указанием коммита) и с сохранением путей?

Цель такова: я веду разработку на локалке, где есть git repo, потом изменения мне нужно влить на сервер (там нет репозитория) по фтп. Пофайлово вливать - не очень удобно, особенно если файлов много. Хотелось бы получить файл или директорию - в которой находятся только те файлы которые изменены или из указанного коммита, но с сохранением всех путей - чтобы указать эту папку, указать переписывать файлы и она благополучно бы залилась на сервер.

PS: предлагать поставить репо на сервере не нужно
  • Вопрос задан
  • 1543 просмотра
Решения вопроса 1
AlexXYZ
@AlexXYZ
O Keep Clear O
Такой вариант с помощью TortoiseGit вам не подойдёт:

c056cee5ce154a2881be57012abc7673.png

Я вижу, что все сохранённые файлы раскидались по своим путям.

update:

Кое что нашёл, как раз для linux console:
из экспериментов по документу: stackoverflow.com/questions/4541300/export-only-mo...

мой пример:
определить SHA коммита, из которого нужны файлы и делаем:

git diff-tree -r --no-commit-id --name-only --diff-filter=ACMRT fd720ceac0b856995afc02921de1615197e9eb0d | xargs tar -rf mytarfile.tar

b435ca8c28394a0cad95c5b66f1a12ac.png
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
dmitriylanets
@dmitriylanets
веб-разработчик
может вам подойдет вариант деплоя phing + rsync или сервис деплоя codeship для решения данной задачи?
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы