Есть задача: внедрить в контору систему контроля версий. В конторе есть FreeBSD сервер и машины разработчиков under WinXP. В конторе разрабатываются два типа проектов: общие и личные.
На сервер надо сабмитить только общие проекты; личные проекты обитают на конкретной машине разработчика, их на сервер сабмитить не надо. Тем не менее, разработчикы должны управлять личными проектами используя тот же клиент, что и для управления общими проектами.
Насколько я понимаю, на сервере нужен SVN сервер, а на машинах разработчиков какой-нибудь SVN клиент, который может работать с удалённым сервером и представлять из себя локальный сервер тоже. Или не обязательно SVN?
Если меня читает кто-нибудь, имеющий релевантный опыт: помогите разобраться с предметной областью, пожалуйста. Как называется то, что мне надо, и какой софт лучше всего ставить. Спасибо.
SVN сейчас уже начинает отходить в прошлое, лучше использовать git, Mercurial или Bazaar. Я бы посоветовал git, но по слухам, у него плохо с мордами на Windows
Comment by LXj — 26.02.2008 @ 17:21
А чё там разбиратся взял и разобрался
Comment by Andy Nesteroff — 26.02.2008 @ 19:52
SVN - will be the best. Он уже вышел из стадии детства с его болячками и давно напрочь загнобил CVS.
я вижу два варианта организации:
1) SVN-сервер для общих проектов находится на сервере, для личных проектов каждый разработчик поднимает локальный SVN-сервер (это просто). Клиент один и тот же - например tortoise svn - интегрируется в Проводник. Для разработчика будет абсолютно прозрачно где находится сервер - тортоиз хранит данные о свн-сервере в каталоге проекта
Минус в том, что разработчикам будет впадлу поднимать сервера на своих машинах
2) а почему не выделить для разработчиков ветку на основном сервере? Тогда разработчикам не надо будет поднимать локальные сервера. Например svn://freebsd.server/trunk/ - это основной проект конторы, а в svn://freebsd.server/customers/ разрешить разработчикам создавать каталоги для своих нужд. Так гораздо удобнее, как по мне.
Comment by Андрей Кулинич — 26.02.2008 @ 21:29
Андрей, спасибо. Мне уже посоветовали именно tortoise svn, теперь разбираюсь с терминологией.
Насчёт поднимать локальные сервера: есть такая необходимость, опционально и для некоторых разработчиков. Черепаха позволяет использовать локальную файловую систему для этих целей, так что прекрасно: кому надо, тот поднимет свой сервер, кому не надо, будет просто пользоваться клиентом.
Comment by Val Petruchek — 26.02.2008 @ 22:13
Tortoise SVN это клиент
сам по себе он репозиторий создать не может
не знаю как в FreeBSD а в Debian по умолчанию svn сервер запускается через init.d и работает таким образом что у вас может быть какое угодно количество репозиториев
а строка коннекта к ним выглядит как
svn://server/reponame/
tortoise конечно хорош, но IMHO стоит как минимум прочесть
svn help
svnserve help
Comment by Slach — 27.02.2008 @ 18:20
Ага, спасибо.
Фишка в том, что Tortoise умеет создавать локальный репозиторий. Create Repository Here называется.
Comment by Val Petruchek — 27.02.2008 @ 19:36
Разве тортойс может создать репозиторий без установленного на машине svn? Т.е. svn должен быть по любому, но он может не торчать как сервер. Это вполне удобная схема для машины разработчика. Если локальный репозиторий захочется перенести на сервер то есть svndump.
Comment by Dmitry Smirnov — 01.03.2008 @ 14:05
[…] Я не тестировал доступность этого репозитория по локальной сети, возможность разграничения прав на чтение/запись и создание нескольких пользователей — моей целью было поднять локальный репозиторий для одного разработчика. Для желающих соорудить из него что-то большее, имеет смысл почитать про SVNAdmin. […]
Pingback by Локальный SVN репозиторий — 09.07.2008 @ 09:25