все что связано с моей работой
Главная » Unix » Перенос SVN на выделенный хост

Перенос SVN на выделенный хост

Продолжая разгружать свой “шлюз” дошла очередь до SVN сервера.

Собственно, с самим сервером проблем не возникло ни каких, в шаблонах TurnKey есть готовый шаблон машины с кучей репозиториев: SVN, Git, Bazar, Mercurial. На все случаи жизни.

Накатил, поднял, вырубил лишнее. Тут все стандартно и без проблем.

Проблемы начались с переносом репозиториев. Тырнет быстро выдал решение — Перенос SVN репозитория, первый вариант, через SSH, подходит как нельзя более.

Но реалии таковы, что в процессе работы у меня скопилось много репозиториев. Нет больших проектов —  есть куча маленьких утилит для облегчения жизни. И не только своей. И переносить руками каждый дело муторное (Лень – двигатель прогресса).  В связи с этим родились эти скрипты.

Сделать дампы всех репозиториев (FreeBSD):

#!/bin/sh
folder=/home/repository/
#****************************

for pn in `ls $folder`; do
  svnadmin dump $folder$pn > $pn.dump
done

Затем переносим на выделенную машинку и там создаем и заливаем (Linux TurnKey):

#!/bin/bash

FOLDER=/srv/repos/svn/
#****************************

CUR_FOLDER=`pwd`
cd $FOLDER
for fn in `ls *.dump`; do
  rep_name=${fn%'.dump'}
  svnadmin create $rep_name
  svnadmin load $rep_name < $fn
done

cd $CUR_FOLDER
Строка 9 удаляет самое короткое .dump, начиная просмотр с конца строки

WebSVN в Turnkey настроен и сам подхватывает все репозитории. Если надо какой-то скрыть – тогда надо править конфиг.

Предположу, надо будет добавить ве разрешенные репозитории, и убрать параметр “Папка с репозиториями”.

Вот собственно и все.

Комментариев нет

No comments yet.

RSS feed for comments on this post.

Sorry, the comment form is closed at this time.