Как удалить содержимое папки в SVN
Мне нужно удалить содержимое папки в подрывной деятельности черепахи. Таким образом, в основном разработчик загрузил 30 гигабайт данных в ствол проекта для тестирования и теперь хочет удалить все содержимое этой папки и не сохранять эти данные для хранения.
Поэтому я бы использовал эту команду, и это правильный синтаксис: SVN удалить что-то.com/svn/prod/WHOtest/trunk
Затем зафиксировать, а затем просто заново создать папку и зафиксировать снова?
4 ответа
Svn delete будет записывать, что в какой-то момент вы больше не хотите отслеживать содержимое файла или папки. Это не удалит это из истории как бы то ни было. Есть некоторая экспериментальная работа по удалению из истории, но я не знаю статус этого. Единственный надежный способ удалить момент времени - это восстановить репозиторий svn с нуля. Теперь вы можете snvdump все до точки, предшествующей 30 ГиБ, а затем попытаться внедрить патчи после ошибочной фиксации. Я не завидую человеку, который должен это делать. Может быть, вы можете заставить человека, который сделал это, исправить вещи (при условии, что вы все еще доверяете им делать правильные вещи)
Я не думаю, что вы можете навсегда удалить содержимое через SVN. Даже если вы удалите контент, его история SVN будет всегда там.
Я думаю, вам придется вручную удалить контент с сервера.
Добавление к ответу Джейсона: svndump все до момента, когда произошел коммит 30 ГиБ
Сделайте резервную копию вашего текущего хранилища
svnadmin dump -r1:125 myrepo > my.dump
где125
это пересмотр до 30 ГиБудалить и заново создать свой репозиторий
svnadmin load myrepo < my.dump
загрузить чистый отвал.