Организация коллективной работы над проектом — различия между версиями

Материал из Umicms
Перейти к:навигация, поиск
(Новая страница: «'''Задача:'''<br /> Допустим, у Вас есть несколько разработчиков, которые занимаются Вашим прое…»)
 
 
(не показана 1 промежуточная версия этого же участника)
Строка 1: Строка 1:
 
'''Задача:'''<br />
 
'''Задача:'''<br />
Допустим, у Вас есть несколько разработчиков, которые занимаются Вашим проектом. У каждого из них стоит своя задача, и, по мере её выполнения, они вносят изменения в уже установленную систему. Каким образом можно быть уверенным, что в процессе разработки все файлы останутся работоспособными и никакие данные не будут утеряны, в результате внесения не согласованных изменений?<br/><br/>
+
Во многих веб-студиях над проектом работают несколько разработчиков одновременно. У каждого из них стоит своя задача, и, по мере её выполнения, они вносят изменения в уже установленную систему. Каким образом можно быть уверенным, что в процессе разработки все файлы останутся работоспособными и никакие данные не будут утеряны, в результате внесения не согласованных изменений?<br/><br/>
  
 
'''Решение:'''<br/>
 
'''Решение:'''<br/>
В действительности, решение уже существует и называется SVN (http://ru.wikipedia.org/wiki/Svn). Осталось его только внедрить.<br/>
+
В действительности, решения уже существуют. Рассмотрим одно из решений на примере SVN (http://ru.wikipedia.org/wiki/Svn). Осталось его только внедрить.<br/>
 
<ul>
 
<ul>
 
<li>центральный экземпляр системы UMI.CMS ставится на некий домен, к которому
 
<li>центральный экземпляр системы UMI.CMS ставится на некий домен, к которому
Строка 23: Строка 23:
 
<ul>
 
<ul>
 
<li>можно настроить svn, чтобы при коммите обновление в  центральной системе происходило автоматически;</li>
 
<li>можно настроить svn, чтобы при коммите обновление в  центральной системе происходило автоматически;</li>
<li>тяжёлый контент (картинки, видео) лучше загружать сразу на центральном домене, чтобы снизить нагрузку на svn.</li>
+
<li>тяжёлый контент (картинки, видео) лучше загружать сразу на центральном домене и не помещать в svn, чтобы снизить нагрузку на хранилище.</li>
 
</ul></i>
 
</ul></i>

Текущая версия на 10:10, 21 января 2011

Задача:
Во многих веб-студиях над проектом работают несколько разработчиков одновременно. У каждого из них стоит своя задача, и, по мере её выполнения, они вносят изменения в уже установленную систему. Каким образом можно быть уверенным, что в процессе разработки все файлы останутся работоспособными и никакие данные не будут утеряны, в результате внесения не согласованных изменений?

Решение:
В действительности, решения уже существуют. Рассмотрим одно из решений на примере SVN (http://ru.wikipedia.org/wiki/Svn). Осталось его только внедрить.

  • центральный экземпляр системы UMI.CMS ставится на некий домен, к которому есть лицензионный ключ (фактически, это обычный работающий сайт);
  • создаётся ряд субдоменов, по одному на каждого разработчика, с разными документрутами (каталог с файлами, отличный от того, что используется центральной версией системы);
  • все эти субдомены добавляются в центральный экземпляр UMI.CMS как зеркала(в административной панели http://help.umi-cms.ru/index.html?module_config_additional_domains.htm);
  • файлы центрального экземпляра добавляются в svn;
  • на всех субдоменах делается чекаут из svn;
  • разработчики монтируют себе субдомены (любым доступным способом - NFS, SMB, shared disk и т.д.), таким образом каждый получает свою копию файлов, но все работают с одной БД (центральной);
  • когда какой-либо разработчик делает коммит файлов в своём субдомене, после этого в центральном экземпляре надо делать апдейт.



Примечания:

  • можно настроить svn, чтобы при коммите обновление в центральной системе происходило автоматически;
  • тяжёлый контент (картинки, видео) лучше загружать сразу на центральном домене и не помещать в svn, чтобы снизить нагрузку на хранилище.