Я хотел бы установить сервер Subversion на мою машину с Ubuntu.
Какие пакеты мне нужны? Как мне создать репозиторий и установить нового пользователя?
Я хотел бы установить сервер Subversion на мою машину с Ubuntu.
Какие пакеты мне нужны? Как мне создать репозиторий и установить нового пользователя?
Ответы:
Существует множество конфигураций для svn, вот несколько коротких инструкций, чтобы получить базовый репозиторий svn, доступный через http.
apt-get install subversion apache2 libapache2-svn
mkdir -p /var/svn/repos/
cd /var/svn/repos/
svnadmin create --fs-type fsfs <your-repository>
mkdir -p /tmp/myproject/trunk /tmp/myproject/tags /tmp/myproject/branches
svn import /tmp/myproject file:///var/svn/repos/<your-repository> -m "initial import"
cd /etc/apache2/sites-available
touch subversion.conf
vim subversion.conf
Теперь отредактируйте пустой файл с этой конфигурацией:
NameVirtualHost *:80
<VirtualHost *:80>
<Location /svn>
ErrorDocument 404 default
DAV svn
SVNParentPath /var/svn/repos
SVNListParentPath off
Require valid-user
AuthType Basic
AuthName "subversion access"
AuthUserFile /var/svn/.htpasswd
AuthzSVNAccessFile /var/svn/authz
</Location>
</VirtualHost>
a2enmod dav_svn
a2enmod authz_svn
a2ensite subversion.conf
/etc/init.d/apache2 restart
htpasswd -c /var/svn/.htpasswd user
touch /var/svn/authz
vim /var/svn/authz
[Ваш-хранилище: /]
пользователь = rw
Давайте попробуем оформить репо через http: svn checkout http://your-server/svn/your-repository
checkout
в отличие от ceckout
?
Invalid command 'AuthzSVNAccessFile', perhaps misspelled or defined by a module not included in the server configuration
. Вы можете использовать команду, a2enmod authz_svn
чтобы сделать это.
Начните читать руководство . В настоящее время я делаю то же самое.
После того как вы настроили хранилище с помощью svnadmin create /path/to/repo
, вы можете использовать его svnserve --root /path/to/repo
для доступа к хранилищу svn://yourhost/
. При необходимости откройте TCP-порт 3690.
Можно использовать SVN поверх HTTP, но я еще не читал эту часть: o
Вам понадобится subversion
посылка.
sudo apt-get update
sudo apt-get install subversion
Этот пакет содержит клиента, инструменты для создания хранилища Subversion и сервера.
диверсия
Subversion - это система контроля версий с открытым исходным кодом.
Вы можете следовать этому руководству на help.ubuntu.com:
Вот запись в блоге от WANdisco о том, как установить Tortoise SVN 1.7 и внести в ваш первый репозиторий изменения.
Чтобы установить Subversion, откройте терминал и выполните следующую команду:
sudo apt-get install subversion libapache2-svn
Мы собираемся создать хранилище Subversion в / svn, хотя вы должны выбрать место, которое имеет достаточно места.
sudo svnadmin create /svn
Измените владельца этого хранилища на пользователя Apache.
sudo chown -R www-data:www-data /svn
Создать базовый репозиторий Subversion для последующего использования (для производства / QA / тестирования / отчетности ../ и т.д ..)
sudo mkdir -p /tmp/myproject/trunk /tmp/myproject/tags /tmp/myproject/branches
Импортируйте эти каталоги в наш репозиторий
sudo svn import /tmp/myproject file:///svn -m "initial import"
Далее нам нужно отредактировать файл конфигурации для модуля subversion webdav. Вы можете использовать другой редактор, если хотите.
sudo gedit /etc/apache2/mods-enabled/dav_svn.conf
Элемент Location в файле конфигурации определяет корневой каталог, из которого будет доступна subversion, например: http://www.server.com/svn
<Location /svn>
Строка DAV должна быть раскомментирована, чтобы включить модуль dav
# Uncomment this to enable the repository,
DAV svn
В строке SVNPath должно быть указано то же место, где вы создали репозиторий с помощью команды svnadmin.
# Set this to the path to your repository
SVNPath /svn
Следующий раздел позволит вам включить аутентификацию. Это просто базовая аутентификация, поэтому не считайте ее чрезвычайно безопасной. Файл паролей будет расположен там, где параметр AuthUserFile устанавливает его… вероятно, лучше оставить его по умолчанию.
# Uncomment the following 3 lines to enable Basic Authentication
AuthType Basic
AuthName “Subversion Repository”
AuthUserFile /etc/apache2/dav_svn.passwd
Чтобы создать пользователя в репозитории, используйте следующую команду:
sudo htpasswd -cm /etc/apache2/dav_svn.passwd <username>
Обратите внимание, что вы должны использовать опцию -c только в первый раз, когда вы создаете пользователя. После этого вы захотите использовать только опцию -m, которая задает шифрование пароля MD5, но не создает файл заново.
Пример:
sudo htpasswd -cm /etc/apache2/dav_svn.passwd geek
New password:
Re-type new password:
Adding password for user geek
Перезапустите apache, выполнив следующую команду:
sudo /etc/init.d/apache2 restart
Спасибо: http://www.howtogeek.com/howto/ubuntu/install-subversion-with-web-access-on-ubuntu/