2010-08-17 3 views
3

Я пытаюсь удалить определенные файлы из истории изменений, которые я не имел в виду. Может ли кто-нибудь предоставить способ сделать это?Удалить определенные файлы из истории изменений

+0

Вы можете принять и/или отложить ответ, если это поможет. Благодаря! – bahrep

ответ

2

Вам необходимо использовать инструмент svndumpfilter. Процедура включает сброс вашего репозитория, фильтрацию (с помощью svndumpfilter) вашего файла дампа и повторную загрузку результатов в новый репозиторий. См. this chapter в SVNBook.

-2

Вы не можете удалить историю изменений.

+1

Это совсем не так ... это все «raison d'etre» утилиты svndumpfilter. – Mark

2

Кроме фильтра фильтрации репозитория с svndumpfilter существует еще одно решение, позволяющее избавиться от определенных файлов и папок в репозитории. Пожалуйста, ознакомьтесь с Записями об ошибках Apache Subversion "How do I completely remove a file from the repository's history?".

Решение требует, чтобы выполнить следующие действия:

  1. Настройка path-based authorization правил в отказать доступ на чтение для USERNAME к ТРАЕКТОРИЙ файла или папки, которую требуется удалить из истории хранилища. Обратите внимание на множественное число существительное пути. Файл или папка, из которой вы хотите избавиться, могут иметь разные имена или могут находиться в разных местах в истории хранилища. Пожалуйста, учтите это при настройке правил запрета.

  2. Создать пустой репозиторий,

  3. Используйте svnsync инструмент для синхронизации источника (т.е. исходной) хранилище в целевом хранилище под счет USERNAME. Подробнее о репликации репозитория с помощью svnsync см. В главе SVNBook "Repository Replication".

В отличии от svndumpfilter, svnsync будет автоматически переводить операции копирования с нечитаемым исходным путем в нормальные добавления, что полезно, если история с участием операции копирования должна быть отфильтрована.

Смежные вопросы