Ошибка SVN (невозможно установить файл)
Каждый раз, когда я пытаюсь передать файлы в SVN, я получил следующую ошибку.
Command Commit
Modified D:\Project\src\WebSite\SomePage.aspx.cs
Sending Content D:\Project\AKent\src\WebSite\Test\SomePage.aspx.cs
Commit succeeded, but other errors follow:
Error bumping revisions post-commit (details follow):
Can't set file 'D:\Project\AKent\src\WebSite\Test\SomePage.aspx.cs'
read-write: Access is denied.
После получения этой ошибки SVN не позволяет мне ничего обновлять или совершать! И меня действительно расстраивает то, что папка проекта составляет около 2 ГБ, и каждую ночь я загружаю ее из SVN снова и снова.
Пожалуйста, помогите мне исправить это! Я просто хочу знать, что не так с моим SVN. Я попытался переустановить, ничего не исправить.
Ответы
Ответ 1
Ошибка
чтение-запись: доступ запрещен.
указывает, что svn не может получить доступ к файлу или не может установить все необходимые ему атрибуты.
Теперь, когда вы либо не имеете полного доступа к этим файлам, либо какое-либо другое приложение имеет открытый файл.
В первом случае: убедитесь, что ваше имя пользователя имеет полный доступ ко всем папкам и подпапкам вашей рабочей копии. Обратите внимание, что в Vista/Win7 этого недостаточно, чтобы быть администратором - вы должны предоставить полный доступ к таким файлам вручную .k
Во втором случае: отключить индексный указатель поиска Windows для вашей рабочей копии и исключить проверку рабочей копии вашим антивирусным сканером.
Ответ 2
У меня была такая же проблема, но исправлена. Мое решение:
1. Run Command Prompt as Administrator
2. Navigate to the target working copy
3. svn cleanup
Ответ 3
Если вы делите папку svn versioned с помощью samba и запускаете эту проблему при ее использовании с компьютера Windows, попробуйте:
http://tortoisesvn.net/faq.html#samba
Также добавьте в свой файл smb.conf:
dos filemode = yes
Ответ 4
- скопируйте неправильную папку (1) в другую папку (2)
- удалить неправильную папку (1)
- скопируйте резервную копию (2) в (1)
Надеюсь, что этот подход будет работать и для вас!
Ответ 5
Я пытался вернуть файл, но получал ошибку, указанную в сообщении OP. Сонский ответ просто сработал у меня. Я не могу комментировать или редактировать этот ответ, поэтому мне пришлось скопировать их ответ и добавить небольшой шаг в конце. Он/она заслуживает всякого кредита.
- Запустить командную строку как администратор
- Перейдите к целевому рабочему интерфейсу
- копия svn cleanup
- svn revert [имя_файла]
(возврат не работал в интегрированных инструментах Windows Explorer/TortoiseSVN, мне приходилось делать это из строки cmd)