Ошибка SubGit, когда пользователи svn фиксируют

Я только что установил SubGit и протестировал его. Когда один из пользователей svn зафиксировал файл, он получил следующее сообщение об ошибке:

Не удалось выполнить фиксацию (подробности следуют): хук «pre-commit» не удался с выводом ошибки:

ОТЧЕТ ОБ ОШИБКЕ SubGit (версия SubGit 1.0.2 («Miai»), сборка № 1764):

Вы получили это сообщение, потому что SubGit (http://subgit.com/) установлен в вашем репозитории, и в механизме перевода SubGit возникла ошибка, которую необходимо устранить.

НЕИСПРАВИМАЯ ОШИБКА: svn: невозможно переименовать файл «F:\svn\testsubgit\db\node-origins\0.tmp» в «F:\svn\testsubgit\db\node-origins\0»

ТЕКУЩЕЕ СОСТОЯНИЕ: Subversion: ТОЛЬКО ДЛЯ ЧТЕНИЯ Git: ЧТЕНИЕ И ЗАПИСЬ

ДЛЯ ВОССТАНОВЛЕНИЯ: выполните процедуру восстановления после ошибки, описанную на странице http://subgit.com/book/#recovery.

ДЛЯ ОТЧЕТА: 1) Получите журнал ошибок с сервера по адресу 'F:\svn\testsubgit\subgit\subgit-sync-20121108-180124.zip'.

2) Report an issue at http://issues.tmatesoft.com/

Есть ли способ решить эту проблему? Или мне нужно изменить некоторые настройки SubGit?


person user1808937    schedule 08.11.2012    source источник


Ответы (1)


Я разработчик SubGit и буду рад помочь вам решить эту проблему. Во-первых, отправьте журналы SubGit из 'F:\svn\testsubgit\subgit\subgit-sync-20121108-180124.zip на [email protected]

Кроме того, предоставьте дополнительные сведения о вашей среде, в частности:

а) где находятся ваши репозитории Subversion (может быть, это сетевой диск)? б) используете ли вы сервер Apache (протокол http) для доступа к репозиториям Subversion? c) вы используете один и тот же сервис (Apache) для доступа к репозиториям Git?

Первое, что нужно проверить, это пользователи (учетные записи), от имени которых работают сервисы Subversion и Git. Если это разные пользователи (например, системный администратор и сетевая служба), то может возникнуть проблема с правами доступа — файлы, созданные одной службой, станут недоступными для другой. Когда вы запускаете «subgit configure» и «subgit install», также убедитесь, что эти команды выполняются от имени того же пользователя, который запускает сервер Apache (или другую службу).

Если вы используете сетевой диск для хранения репозиториев Subversion, причиной проблемы может быть конфигурация сетевого диска, и я бы посоветовал вам переместить ваши репозитории на обычный диск на сервере.

Кроме того, некоторые антивирусные программы, установленные на сервере, потенциально могут мешать работе SubGit — попробуйте отключить их.

Чтобы устранить эту ошибку, следуйте инструкциям на странице http://subgit.com/book/#recovery. Самый простой способ - запустить «subgit install --rebuild repos», но таким образом вы можете потерять некоторые коммиты на стороне Git.

person Alexander Kitaev    schedule 08.11.2012