Должен ли git-репозиторий содержать все двоичные и статические файлы, необходимые для развертывания? - PullRequest
2 голосов
/ 05 октября 2011

Справочная информация:

Я один из двух разработчиков в нашей команде. Мы использовали Git внутри компании в течение 6 месяцев, с большим успехом. Тем не менее, мы все еще «внедряем вручную» через FTP на наш рабочий сервер ... мы не хотели рисковать автоматическим развертыванием, пока не освоимся с рабочим процессом git. Теперь у нас есть настройка сервера разработки, и мы рассматриваем какое-то развертывание «одним щелчком» ... Я слышал, что некоторые люди делают git pull на сервере dev из репозитория кода. Я также слышал, что некоторые люди "rsync" файлы через промежуточный сервер.

Вопрос:

Если наше git-репо содержит все большие файлы, которые никогда не меняются (например, .cab-файлы, используемые нашим апплетом для загрузки фотографий Java). Очевидно, что наши кэшированные HTML-файлы не принадлежат репозиторию ... но как насчет нашего руководства по продукту PDF и тому подобного? Должны ли они быть отслежены git? (В настоящее время они у меня есть на gitignore для экономии места на github и на наших машинах).

Какова будет подходящая стратегия "одного действия" для нашей установки:

  • Дев Ноутбук 1 (Офис / Дом)
  • Дев Ноутбук 2 (Офис / Дом)
  • Dev Server (Office)
  • Производственный сервер (вне сайта)

Спасибо

1 Ответ

6 голосов
/ 05 октября 2011

Обычная стратегия предполагает, что ваш репозиторий git содержит все необходимые файлы, необходимые для сборки целевого продукта (исходные коды, дополнительные двоичные библиотеки, драйверы, сценарии сборки и т. Д.).

Будь то пакет .zip, установочный файл для всего приложения - репозиторий git должен быть самодостаточным. Каждый разработчик должен иметь возможность клонировать репозиторий и создавать полный вывод. Конечно, обязательным условием является полная среда разработки.

Таким образом, вы можете включить CAB-файлы в хранилище или создать его из исходных текстов.

Однако вместо простого клонирования и извлечения репозитория на рабочий сервер вы можете использовать сервер сборки (например, Hudson), который будет извлекать, создавать и синхронизировать цели с производством. Таким образом, даже PDF-файлы могут быть построены, например, из. Файлы LaTeX.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...