Subversion: избавление от версионного каталога ".svn" - PullRequest
5 голосов
/ 08 июня 2010

Я не знаю точно, как это произошло, но у меня есть версионный каталог ".svn" в моем хранилище. Не спрашивайте меня, как он туда попал. Если я скажу svn удалить его, он не захочет, поскольку .svn является зарезервированным аргументом.

Сила не работает.

Есть идеи?

EDIT: Хорошо, я решил это путем svn rm добавления родительского каталога и добавления его обратно.

Тем не менее, если кто-то знает чистое решение этого вопроса, оно будет высоко оценено.

РАЗЪЯСНЕНИЯ:

svn delete <repo url>/foo/.svn

Не работает. Я думаю, что я попробовал каждую простую комбинацию команд и аргументов. Я почти уверен, что если это выполнимо, это взломать. Я знаю способ: dump -> изменить дамп с помощью инструмента -> reimport но это так страшно, как в аду. Это не мерзавец, если вы ударите SVN-репо, Вы / это остается избитым.

Ответы [ 2 ]

2 голосов
/ 23 июля 2010

"svn rm" с URL-адресом работает нормально, я только что попробовал (используя SVN 1.6.5, Mac OS X):

$ svn ls -R file:///xxx/testrepo
foo/
foo/.svn/
foo/.svn/baz
foo/bar/
foo/bar/baz

$ svn rm -m 'Yes it works.' file:///xxx/testrepo/foo/.svn
Committed revision 6.

$ svn ls -R file:///xxx/testrepo
foo/
foo/bar/
foo/bar/baz

Вы также можете использовать «svn mv», не нужно ничего удалять:

$ svn ls -R file:///xxx/testrepo
foo/
foo/.svn/
foo/.svn/baz
foo/bar/
foo/bar/baz

$ svn mv -m 'Rename works too.' file:///xxx/testrepo/foo/.svn \
    file:///xxx/testrepo/foo/dotsvn
Committed revision 8.

$ svn ls -R file:///xxx/testrepo
foo/
foo/bar/
foo/bar/baz
foo/dotsvn/
foo/dotsvn/baz

PS. Создать каталоги ".svn" в репозиториях svn очень просто: просто используйте svn cp или svn mv с URL-адресами.

0 голосов
/ 14 июня 2010

Просто svn delete напрямую из хранилища, например,

svn rm -m "removing checked-in .svn" http://myserver/svn/repo/trunk/dir/.svn

затем удалите локальную копию и svn update, чтобы получить исправленную версию.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...