Вот пришло время и мне переводить сервера для обновления портов и исходников на subversion. 28 февраля 2013 года поддержка cvs была прекращена и для обновления дерева портов нужно было задействовать subversion. Для начала понадобится сам subversion. Взять его можно в портах: devel/subversion. Если у вас очень старая версия портов, то devel/subversion-freebsd.
Ищем
# whereis subversion
subversion: /usr/ports/devel/subversion
# cd /usr/ports/devel/subversion && make install clean
Далее переменовываем старые папки с исходниками и портами (можно конечно удалить, но если что-то пойдет не так. то можно будет все вернуть, а удалим их как все пройдет нормально)
# mv /usr/ports/ /usr/ports_old
# mv /usr/src/ /usr/src_old
После этого можно папку distfiles можно вернуть на место, чтоб не качать дистрибутивы по новой.
Обновляем порты
# svn co svn://svn.FreeBSD.org/ports/head /usr/ports
Обновляем исходники
# svn co svn://svn.freebsd.org/base/releng/8.2/ /usr/src
В данном случае скачивается релиз 8.2 (releng/8.2/). Узнать существующие актуальные ветки можно на сайте FreeBSD. Все существующие ветки можно просмотреть через веб-интерфейс для svn по адресу: svnweb.freebsd.org.
Если будут трудности с протоколом svn, то можно заменить протокол svn на http или https: svn.freebsd.org/base/releng/8.2/.
Адреса всех зеркал можно найти на в хендбуке.
Для обновления портов можно написать короткий скрипт, к примеру:
#!/bin/sh
'/usr/local/bin/svn' update /usr/ports
'/usr/local/bin/svn' update /usr/src
'/usr/local/bin/svn' update /usr/doc
'/usr/local/sbin/portsdb' -F
'/usr/local/sbin/portsdb' -u
'/usr/local/sbin/pkgdb' -uFa
'/usr/local/sbin/portsclean' -DDL
'/usr/sbin/pkg_version' -v -L=
'/usr/local/sbin/portaudit' -Fda
Вы можете сами указать то что надо обновить. Я поместил скрипт в файл svn-update и в /usr/local/bin/ и дал root права на запуск
# chmod +x /usr/local/bin/svn-update
Ну вот впринципе и все переход с cvs на svn на этом закончен.