Правильный способ развертывания из Git. (Local — > Remote Git — > > Live server)

Поэтому я программирую с помощью Codeigniter framework. Я задавался вопросом, как лучше всего приступить к развертыванию на живом сервере.

Мой вопрос связан со значением по умолчанию .gitignore.

Если я добавляю и фиксирую файлы в мой репозиторий Git (который я буду использовать, чтобы вытащить и затем в мой живой веб-сервер на Cloudways), проблема заключается в том, что не все файлы будут добавлены в репозиторий git, и, таким образом, не все файлы будут скопированы на веб-сервер на Cloudways. Каков правильный механизм копирования всех файлов на живой сервер?

Удалить.gitignore, а затем зафиксировать все файлы в удаленном репозитории, чтобы Cloudways мог извлечь все файлы изначально? А потом скопировать .gitignore файл обратно в мой локальный компьютер, а затем добавить и зафиксировать там, так что ненужные файлы не будут проходить и будут игнорироваться в будущем git фиксирует?

Я так запуталась. Раньше я бы обходил Git, а просто редактировал файлы live на сайте. Но теперь я чувствую, что мне нужно идти по правильному пути и использовать репозитории Git для моих будущих проектов.

Кроме того, как правильно разрабатывать локально, а затем отправлять файлы на живой сервер? Не придется ли мне постоянно изменять файлы базы данных и конфигурации перед каждым коммитом / толчком из конфигурации localhost в конфигурацию live server? Я так запутался, пожалуйста, помогите lmao…

1 ответ

  1. Git-это средство управления версиями, а не средство развертывания. Люди изобрели обходные пути и фреймворки вокруг, хотя использовать Git для развертывания, но это не одна из функций Git per-se.

    Вы можете добавить файлы, которые находятся в .gitignoreпросто с помощью git add -f ..., но это, скорее всего, не то, что вы хотите. Также .gitignoreвлияет только на неотслеживаемые файлы. Как только вы добавляете файл в Git, его изменения будут отслеживаться, независимо от того, есть он .gitignoreили нет.

    Если файлы находятся в .gitignoreвас, конечно, была причина, чтобы положить их там, как быть конфигурационные файлы, которые должны быть разными на живом сервере и в вашей локальной среде. Просто создайте эти файлы на живом сервере с соответствующими настройками вручную.