Задать вопрос
Finesse
@Finesse

Как сделать деплой из git репозитория, не подтягивая всю историю?

Есть git-репозиторий с исходным кодом и production-сервер на Ubuntu. Как можно подтянуть на production-сервер код из этого репозитория так, чтобы вместе с ним не тянулась вся git-история? Дополнительные условия:
  • Доступ к production-серверу осуществляется через SSH;
  • Должна быть возможность добавить эту процедуру деплоя в cron (production-сервера или любого другого);
  • Желательно, чтобы была возможность провести операцию без вопросов в любом случае, то есть конфликты должны улаживаться автоматически;
  • При деплое должны удаляться только те файлы, которые удалены из git-репозитория (чтобы не удалялись созданные приложением файлы);
  • Вопрос задан
  • 859 просмотров
Подписаться 2 Оценить 3 комментария
Пригласить эксперта
Ответы на вопрос 2
@akeinhell
Хранишь в master-ветке только работоспособный код.
При развертывании нового сервера
git clone git@repo/repo.git path/to/project --depth=1


при обновлении
git pull origin master

Для автоматического обновления при push'е в мастер, настраиваешь хук на скрипт доступный из интернета который будет делать git pull

Команда git pull притягивает только изменения
Ответ написан
Fesor
@Fesor
Full-stack developer (Symfony, Angular)
rsync

p.s. GIT это система контроля версий, а не деплоймент тула. Используйте капистраны всякие для деплоймента.
Ответ написан
Ваш ответ на вопрос

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

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