Рабочий процесс разработки, Joomla, GIT - PullRequest
6 голосов
/ 27 июня 2011

У меня есть несколько вопросов о том, как вы настраиваете свою среду разработки.

Я управляю сайтом, который в настоящее время использует SOBI2.SOBI2 будет заменен пользовательским компонентом, который я создаю с использованием Nooku Framework.

На данный момент у меня установлена ​​Joomla на мой локальный хост.Nooku Framework и мой пользовательский компонент находятся в своих собственных каталогах на моем компьютере и затем связаны с установкой Joomla.Я делаю это, потому что хорошо, когда их разводят.Мой пользовательский компонент затем отслеживается с помощью GIT, а Nooku отслеживается в их общедоступном репозитории SVN.Я предполагаю, что это довольно стандартная установка.

Итак, теперь я хочу клонировать мою LIVE Joomla установку на мой локальный хост и отслеживать ее с помощью GIT, чтобы можно было легко вносить изменения на моем живом сервере.Прямо сейчас действующий сайт вообще не контролируется версией.

Итак, как мне это легко сделать?

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

  1. Внесение изменений в пользовательский компонент и тестирование в пустой установке Joomla
  2. Передача изменений.
  3. Внесите изменения из моего репозитория пользовательских компонентов на мой локальный сайт (зеркало живого сайта через GIT).
  4. Убедитесь, что все работает.
  5. Передайте и отправьте изменения на сайты GIT репо.
  6. Извлечение изменений из репозитория сайтов на работающий сервер.

Я думаю, обновления базы данных должны обрабатываться вручную.

  • Этохороший способ работы?
  • Как отслеживать пользовательский компонент внутри моего локального сайта?Я слышал о субмодулях GIT, для чего он используется?

  • Есть ли хорошие руководства для такого рода вещей?

С наилучшими пожеланиями, Линус

1 Ответ

3 голосов
/ 30 июня 2011

Мы делаем это следующим образом, но с помощью инструмента управления исходным кодом Mercurial :

  • Извлечение пустого хранилища из bitbucket (или создание локального)
  • Установите Joomla! в эту папку
  • Добавьте в .hgignore все основные файлы и компоненты joomla и убедитесь, что они не будут зафиксированы
  • Добавьте только в репозиторийкомпоненты, плагины, модули, которые мы разрабатываем

Итак, в основном у нас есть Joomla внутри нашей папки репозитория, но все его файлы игнорируются и не фиксируются - за исключением файлов наших собственных компонентов.

Затем мы проверяем репозиторий на рабочем сервере, а затем устанавливаем Joomla!там.(Сначала оформить заказ, а затем только установить Joomla).Когда мы проверяем репо в производство или любое другое место, проверяются только наши файлы.

Для изменений в базе данных обычно у нас есть папка db (или как там ее называют), и мы просто добавляем файлы SQL со сценариями, которые вносят изменения в базу данных.Вы можете легко вызвать их с помощью команды, например mysql -uUser -pPass dbname < 12.table_name.change_name.sql

...