filipchuk
Новичок
Разработка с помощью SVN
В новом проекте есть необходимость коллективной работы программистов. До этого SVN использовал "для себя", просто как систему backup с возможностью отката, сервер обновлял по старинке (копированием по FTP)
Сейчас такой вариант не подходит, и почитав литературы, хочу реализовать следующее:
1) есть домен проекта project.com
2) создаем поддомен dev.project.com - там будет dev-версия проекта, доступ ограничен по паролю
2) в эту dev-версию делаем SVN-checkout
3) также каждый девелопер делает SVN-checkout себе на локальную машину
4) разработчик пишет функционал у себя на машине (у каждого есть своя локальная копию БД), тестирует его
5) после commit в trunk (соглашение, что в trunk отправляется "рабочий" код) выполняется hook, который делает svn update для dev-версии проекта. Если разработчик работает с веткой, то dev-версия не обновляется, результаты работы видно только на локальной машине
6) результаты работы можно просмотреть уже и на dev-версии
7) на production (project.com) делается svn export, над деталями этой операции еще надо подумать, чтоб минимизировать ручную работу
Собственно вопрос: такая схема в реальной работе 2-4 программистов надо проектом будет удобной/правильной, или есть варианты получше?
Возможно, поддомен надо сделать для каждого программиста, и работать с файлами этого поддомена напрямую (подключив себе по SSH папку сервера), без использования локальной копии на своей машине. Тогда обновления каждого программиста будут видны на его поддомене, после их одобрения будет merge в trunk, а в dev-версии будет делаться update из trunk с помощью hook
В новом проекте есть необходимость коллективной работы программистов. До этого SVN использовал "для себя", просто как систему backup с возможностью отката, сервер обновлял по старинке (копированием по FTP)
Сейчас такой вариант не подходит, и почитав литературы, хочу реализовать следующее:
1) есть домен проекта project.com
2) создаем поддомен dev.project.com - там будет dev-версия проекта, доступ ограничен по паролю
2) в эту dev-версию делаем SVN-checkout
3) также каждый девелопер делает SVN-checkout себе на локальную машину
4) разработчик пишет функционал у себя на машине (у каждого есть своя локальная копию БД), тестирует его
5) после commit в trunk (соглашение, что в trunk отправляется "рабочий" код) выполняется hook, который делает svn update для dev-версии проекта. Если разработчик работает с веткой, то dev-версия не обновляется, результаты работы видно только на локальной машине
6) результаты работы можно просмотреть уже и на dev-версии
7) на production (project.com) делается svn export, над деталями этой операции еще надо подумать, чтоб минимизировать ручную работу
Собственно вопрос: такая схема в реальной работе 2-4 программистов надо проектом будет удобной/правильной, или есть варианты получше?
Возможно, поддомен надо сделать для каждого программиста, и работать с файлами этого поддомена напрямую (подключив себе по SSH папку сервера), без использования локальной копии на своей машине. Тогда обновления каждого программиста будут видны на его поддомене, после их одобрения будет merge в trunk, а в dev-версии будет делаться update из trunk с помощью hook