Как обновить из двух источников с помощью Subversion? - PullRequest
1 голос
/ 10 октября 2011

В нашей производственной среде JBoss работает в кластерном режиме с 4+ узлами.Базовый JBoss присутствует в Subversion, и затем у нас есть некоторые локальные изменения на каждом узле.

Какой должна быть стратегия, в которой у нас может быть базовый JBoss в одном месте, а локальные изменения - в другом месте.

Возможно ли иметь обновления из двух источников Subversion в одной папке?или есть какая-то другая стратегия, используемая для таких вариантов использования версий?

Ответы [ 2 ]

1 голос
/ 27 марта 2012

Это решение, которое мы использовали:

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

${nodename}_${nodenumber}_${propertyname}

и каждый сервер имеет переменные, определенные для имени узла и номера узла в файле .profile.

Файл свойств определит все комбинации. Например: нам нужны были отдельные значения CONNECTION_COUNT, чтобы в файле свойств было 8 переменных (4 для QA и 3 для PROD)

PROD_1_MAX_CONNECTION_COUNT=15
PROD_2_MAX_CONNECTION_COUNT=15
PROD_3_MAX_CONNECTION_COUNT=20

QA_1_MAX_CONNECTION_COUNT=12
QA_2_MAX_CONNECTION_COUNT=6
QA_3_MAX_CONNECTION_COUNT=10
QA_4_MAX_CONNECTION_COUNT=16

Теперь на каждом сервере (QA или PROD) имя переменной создается с помощью переменных среды, определенных в файле .profile, и затем выбирается соответствующее свойство.

Это позволяет нам избавиться от любых локальных изменений на любом из узлов.

0 голосов
/ 11 октября 2011

Какой должна быть стратегия, при которой у нас может быть базовый JBoss в одном месте, а локальные изменения версированы в другом месте.

Ветвления на узел, ванильный JBoss на транке и слияние с транкомв каждую ветвь после коммита в транк (если я правильно понял рабочий процесс)

Возможно ли иметь обновления из двух источников subversion в одной папке?

Нет, AFAIK(в чистом виде, при слиянии двух источников, используемых для получения результата).Один туалет -> Один URL репо.Вы можете «переключить» WC на ​​новое место, но в этом случае WC будет обновлен до содержимого нового источника.svn co URL1 + svn co URL2 не будет работать

...