Я начал с повторяющейся ошибки записи в базе данных, и, пытаясь ее исправить, я больше не могу повторно синхронизировать мою базу данных Trac. Невозможно импортировать всю историю, которую я пытался обновить с 0.12 до 1.0.1, однако теперь, когда я запускаю синхронизацию, либо ничего не происходит, либо я получаю сообщение об ошибке TracError: Unsupported version control system "svn": cannot import name fs
.
Попытка повторно синхронизировать все репозитории ничего не делает
[/var/trac/repo]# trac-admin . repository resync "*"
Done.
Указание репо возвращает ошибку
[/var/trac/repo]# trac-admin . repository resync "MyRepo"
TracError: Unsupported version control system "svn": cannot import name fs
Первоначально ошибка говорила "svn", но работает pip install svn
получил меня там, где я сейчас, но pip install fs
не избавит меня от этой ошибки.
Пытался:
easy_install Trac==0.12
и обратно с easy_install Trac==1.0.1
pip install svn
, pip install fs
Система:
Я наконец смог заставить это работать, полностью удалив Trac 0.12 как из системных пакетов сайта python 2.4 по умолчанию, так и из моего python2.7. я использовал pip
удалять Trac
и svn
и yum
удалять subversion
. На этом этапе мне пришлось построить pcre
, swig
, subversion
, и svn-python
из источника, чтобы заставить его работать.
Исходные файлы:
Предполагается, что python2.7 установлен под /usr/local/bin/python2.7
с библиотеками под /usr/local/lib/python2.7/site-packages
.
Установите PCRE:
wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.36.tar.gz
tar -xzvf pcre-8.36.tar.gz
cd pcre-8.36
./configure
make && make install
Установить SWIG (указать --with-python=/path/to/python2.x
):
wget http://prdownloads.sourceforge.net/swig/swig-3.0.2.tar.gz
tar -xzvf swig-3.0.2.tar.gz
cd swig-3.0.2
./configure --with-python=/usr/local/bin/python2.7
make && make install
Установите Subversion (укажите PYTHON=/path/to/python2.x
)
wget http://archive.apache.org/dist/subversion/subversion-1.7.9.tar.gz
tar -xzvf subversion-1.7.9.tar.gz
cd subversion-1.7.9
./configure PYTHON=/usr/local/bin/python2.7
make && make install
make swig-py
make check-swig-py
make install-swig-py
echo /usr/local/lib/svn-python \
> /usr/local/lib/python2.7/site-packages/subversion.pth
ldconfig
Установить Trac
pip2.7 install trac
После завершения я смог успешно повторно синхронизировать свой репозиторий. Не забудьте включить svn
в вашей конфигурации Trac он больше не включен по умолчанию в версии 1.0+.
[root@dev1 ~]# trac-admin /var/trac/myrepo repository resync "MyRepo"
Resyncing repository history for MyRepo...
5827 revisions cached.
Done.