Eclipse и Subversion. Настройка и использование. Ubuntu Linux
Полагаю, каждый программист знаком с системами контроля версий, которые просто необходимы при любой серьезной разработке программного обеспечения. Таких систем существует достаточно большое количество, но мне в силу ряда причин наиболее симпатична Subversion (svn).
Бытует мнение, что такие системы востребованы только группами разработчиков. Тем не менее, я считаю, что и при разработке «в одно лицо» использование единого svn-репозитория для исходников будет очень удобно и правильно. Особенно в случае наличия нескольких компьютеров (например, домашнего и рабочего). Не копировать же, в самом деле, исходники вручную между рабочими станциями.
В этой заметке речь пойдет о настройке svn-репозитория на Ubuntu Linux и использовании его в Eclipse.
Установка и настройка Subversion
Доступ к репозиториям достаточно удобно осуществлять по http-протоколу через Apache. Предполагается, что он уже установлен. Для начала необходимо установить Subversion (если он еще не установлен):
$ sudo apt-get install subversion
и модуль для Apache:
$ sudo apt-get install libapache2-svn
Далее добавляем группу subversion:
$ sudo addgroup subversion
И добавляем в нее нужных нам пользователей:
$ sudo adduser www-data subversion
$ sudo adduser user-1 subversion
$ sudo adduser user-2 subversion
$ sudo adduser user-3 subversion
...
Пользователь www-data в нашем случае должен быть добавлен обязательно, так как доступ предполагается с помощью Apache.
Теперь создаем папку для хранения svn-репозиториев:
$ sudo mkdir /home/svn
$ cd /home/svn
$ sudo mkdir myproject
$ sudo chown -R www-data myproject
$ sudo chgrp -R subversion myproject
$ sudo chmod -R g+rws myproject
Как видно, дерево репозиториев создается в папке /home. Мне лично более логичным видится расположение, например, в /opt (у себя я так и сделал), но именно так рекомендуют делать на сайте Ubuntu. Впрочем, это не суть важно. Папка myproject здесь – это папка конкретного репозитория.
Создаем svn-репозиторий:
$ sudo svnadmin create /home/svn/myproject
Здесь есть маленький подводный камень. Дело в том, что svnadmin создает папки и файлы без прав записи для группы. В случае использования svn-протокола это не проблема, но нам необходим WebDAV-доступ посредством Apache. Поэтому еще раз выставляем права на myproject:
$ sudo chmod -R g+rws myproject
Добавляем следующую секцию в файл /etc/apache2/mods-available/dav_svn.conf:
<Location /svn/myproject>
DAV svn
SVNPath /home/svn/myproject
AuthType Basic
AuthName "myproject subversion repository"
AuthUserFile /etc/subversion/passwd
<LimitExcept GET PROPFIND OPTIONS REPORT>
Require valid-user
</LimitExcept>
</Location>
В этой секции, в частности, указан способ авторизации к репозиторию и файл с паролями пользователей. Более подробно об этом можно почитать здесь.
Добавляем пользователей, которые могут использовать репозиторий через WebDAV:
$ sudo htpasswd -c /etc/subversion/passwd user-1
$ sudo htpasswd /etc/subversion/passwd user-2
$ sudo htpasswd /etc/subversion/passwd user-3
...
Перезапускаем Apache:
$ sudo /etc/init.d/apache2 restart
Все готово. Можно протестировать репозиторий, открыв в браузере URL:
http://hostname/svn/myproject
Этот URL и будет адресом для доступа к репозиторию по WebDAV.
Подключение и использование svn-репозитория в Eclipse
Уже некоторое время я являюсь сторонником Eclipse как IDE для разработки приложений. Eclipse привлекает меня своей гибкостью, расширяемостью и кроссплатформенностью.
Адаптация Eclipse для работы с svn весьма проста. Для этого нужно выбрать пункт Help -> Software Updates -> Find and Install -> Search for new features to install. Далее создаем новый источник для плагина (New Remote Site) и в качестве URL указываем:
http://subclipse.tigris.org/update_1.2.x
Выбираем этот источник для обновления. В результате плагин для поддержки svn в Eclipse скачается и установится. Подробней об этом пожно почитать здесь.
Собственно, все. Теперь на любом проекте можно кликнуть правой кнопкой мыши, выбрать Team -> Share Project, указать URL репозитория и использовать всю мощь системы контроля версий. Естественно, никто не мешает использовать любые другие средства для доступа к Subversion, благо соответствующих средств разработано предостаточно. Главное одно – все исходники теперь лежат в едином месте и нет хаоса в их версиях.
Источник: http://www.solargate.ru/subversion-i-eclipse-nastroyka-i-ispolzovanie
Читайте ещё похожие статьи на этом сайте:
- Apturl в Ubuntu: установка программ одним кликом по ссылке
- Krusader – файловый менеджер под Linux
- Почему я начал изучать Linux? Выбор дистрибутива Ubuntu.
- Ananas – бесплатная альтернатива 1С Бухгалтерии
- Сравнение Windows 7 и Ubuntu 9.10
Если Вам понравилась эта статья, пожалуйста оставьте свой комментарий или подпишитесь на RSS-канал и получайте в будущем статьи на RSS Reader.

Будьте добры, укажите источник в виде честной ссылки (a href=»").
Ссылка – честная, просто движок ее не залинковал. Ко мне уже были притензии по этому поводу. Иногда склыдывается такое впечатление, что народ публикует информацию не для пользы людей, а только лишь для раскрутки своих ресурсов. Тогда бы уже писали правила размещения и использования информации с вашего сайта.
Хорошо, перефразирую – в виде обычной ссылки.
Для раскрутки ресурса гораздо проще использовать биржи ссылок и статей. У меня блог полностью авторский, все статьи «свои, родные», а некоторые из них пишутся весьма непросто. Я совершенно не против, когда их перепечатывают. Но если уж перепечатывают, то хочется, чтобы люди могли спокойно перейти и на первоисточник, может им у меня еще что-то понравится.
Кстати,сердечно поздравляю всех=всех участников блога с первым сентября. (Автора наверное не нужно поздравлять, так как у Вас я думаю все первые сентября уже в прошлом
) Вчера забыла поздравить, как-то не до этого было. Сейчас вот только отошла немного
Мне кажется – настройка SVN особенно при работе в небольшой команде с проктом в локальной сети или тем более дома врядли требует напрягов с возней вокруг модулей апача для того же SVN
Средства разработки (эклипс тут как пример – с таким же успехом это мог быть и например Komodo или GUI клиент вообще не привязанный никак к средству разработки) могут спокойно видеть SVN репозиторий по протоколу svn://