Поддерживать две базы кода, которые на 90% одинаковы, установлены на двух разных серверах, которые должны быть изолированы друг от друга? - PullRequest
1 голос
/ 16 февраля 2012

Мы создали веб-приложение для клиента, развернули его на своем собственном сервере, и теперь оно работает. Наши деловые люди только что договорились о том, чтобы мы могли использовать одно и то же приложение, но оно должно быть на другом сервере, а внешний вид и стиль должны быть изменены. Таким образом, единственными различиями между приложениями являются CSS и база данных. Я отвечаю за обслуживание обеих установок.

В настоящее время у меня есть код в репозитории Git, развернутый на Linode, работающем на сервере Ubuntu. Как я могу настроить вторую копию сайта и при этом сохранить все как можно более сухим?

Я бы предпочел не исправлять ошибки в 90% общего кода, а затем запомнить, что я сделал, и скопировать изменения во второй репо.

Ответы [ 3 ]

2 голосов
/ 16 февраля 2012

Вы можете создать ветку в git для одного из сайтов.

Или вы можете просто выделить вещи, которые должны отличаться, чтобы сайты имели одинаковую кодовую базу, а затем «конфигурация» каждого сайта управлялась отдельно (например, в его собственном git-репо).

1 голос
/ 16 февраля 2012

Это общий случай использования, с которым приходится иметь дело дистрибутивам Linux или поставщикам Android.

Я думаю, у вас есть некоторые коммиты в "обновленной" версии, чтобы настроить этот (один для css, images и i18n)еще один для конфигурации).

Ваша "чистая" кодовая база должна быть основой "обновленной".

Это то, что происходит, когда вы разветвляете проект и хотите интегрировать вышестоящие модификации.

Чтобы достичь этого, ваш чистый проект - это правильное git-репо, другой - другой, который ссылается на очистку с помощью пульта.

Когда изменение применяется к чистому проекту, просто выберите и перебазируйтедругой проект.Это приведет к тому, что настройки будут применены к самой последней вышестоящей версии.

Обратите внимание, что по-прежнему могут возникать конфликты, и вам необходимо проверить результат.Это не волшебство, но оно будет работать в 95% случаев.

1 голос
/ 16 февраля 2012

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

...