2016-07-17 2 views
0

Иногда я попытаюсь совершить файл и получить ошибку:СВН: E200030: образ диска базы данных уродливы

Transmitting file data .svn: E200030: Commit failed (details follow): 
svn: E200030: database disk image is malformed 

This answer рекомендует выполнить следующие действия:

$ sqlite3 .svn/wc.db "pragma integrity_check" 

я сделать это и просто получите следующее:

ok 

Этот же ответ рекомендует проверить свежие скопируйте в другой каталог, а затем скопируйте каталог .svn обратно в текущий каталог. Я также попробовать это, но получить ту же ошибку:

$ svn co $URL /tmp/svn-tmp 
$ rm -rf .svn 
$ cp -r /tmp/svn-tmp/.svn . 
$ svn ci -F svn-commit.txt 
Transmitting file data .svn: E200030: Commit failed (details follow): 
svn: E200030: database disk image is malformed 

Обычно я могу отследить проблему в один файл, который я пытаюсь совершить, и часто один символ в файле, который должен быть удалены или заменены; часто это пробелы. Это происходит, даже если файлы редактируются только в OS X и Linux, а не в Windows. Проблема возникает в разных системах и в разных версиях SVN (1.7 и 1.8).

Недавно я заметил, что если бы я попытался сделать то же самое изменение (замените номер 3 на номер 4) на тот же файл (package.json) на двух разных системах (один OS X, один Linux) и две разные версии SVN (1,8 и 1,7 соответственно), проблема произошла в обоих случаях.

Есть ли что-нибудь еще, что я могу сделать, чтобы попытаться диагностировать эти проблемы?

ответ

1

Это было предложено до:

svn cleanup: sqlite: database disk image is malformed

Ответ на этот вопрос есть:

You do an integrity check on the sqlite database that keeps track of the repository (/.svn/wc.db):

sqlite3 .svn/wc.db "pragma integrity_check" 

That should report some errors.

Then you might be able to clean them up by doing:

sqlite3 .svn/wc.db "reindex nodes" 
sqlite3 .svn/wc.db "reindex pristine" 

If there are still errors after that, you still got the option to check out a fresh copy of the repository to a temporary folder and copy the .svn folder from the fresh copy to the old one. Then the old copy should work again and you can delete the temporary folder.

+3

ОП уже ссылается на вопрос и ответ. [Этот ответ] (http://stackoverflow.com/questions/13675615/svn-cleanup-sqlite-database-disk-image-is-malformed/15874781#15874781) рекомендует запустить следующее .... Это не выглядит чтобы решить вопрос, так что вопрос все еще стоит. – Bugs