Удалить файл из репозитория SVN без удаления локальной копии

217

Как я могу «удалить» файл, который уже находится в репозитории SVN, не удаляя его из моей файловой системы?

TortoiseSVN или инструкции командной строки приветствуются.

Следующие работы, но я надеюсь на что-то более приятное:

  1. Скопируйте файл в другое место за пределами хранилища.
  2. SVN Удалить файл.
  3. совершить
  4. Скопируйте файлы обратно и убедитесь, что игнорировали их при последующих фиксациях.
srmark
источник

Ответы:

265
svn delete --keep-local the_file
phihag
источник
4
Я получаю «svn: invalid option: --keep-local» - это потому что я на 1.4.6?
Барфун
7
@barfoon: Да, --keep-local доступен только в SVN 1.5.0+. Боюсь, вы должны вручную скопировать файл или проверить его с помощью svn cat.
Phihag
4
И не забудьте сделать коммит после этой операции.
Теему Лейсти
4
Когда пользователи обновляются, они получают самую новую версию из репозитория. Поскольку вопрос состоит в том, как удалить файл из хранилища, другие пользователи обнаружат, что the_file удален при обновлении.
Phihag
4
Вот чего я пытался избежать. Так сложно просто что-то стереть из SVN, как только что-то случайно было зарегистрировано ...
BrDaHa
104

Удаление файлов и папок

Если вы хотите удалить элемент из хранилища, но сохранить его локально как неверсионный файл / папку, используйте Расширенное контекстное меню → Удалить (сохранить локально). Чтобы увидеть это в расширенном контекстном меню, вы должны удерживать клавишу Shift, щелкая правой кнопкой мыши по элементу на панели списка проводника (правая панель).

Удалить полностью:
щелчок правой кнопкой мыши → Меню → Удалить

Удалить и сохранить локально:
Shift + щелчок правой кнопкой мыши → Меню → Удалить

crashmstr
источник
61

В TortoiseSVN вы также можете Shift+ щелкнуть правой кнопкой мыши, чтобы получить меню с надписью «Удалить (сохранить локальный)».

Харпо
источник
0

Переименуйте свой файл, передайте изменения, включая «удаленный» файл, и не включайте новый (переименованный) файл.

Переименуйте свой файл обратно.

Аврам
источник
-2

Если вы хотите удалить один файл xxx.java из SVN:

  1. Перейдите в путь к рабочей области, где находится файл.
  2. Удалить этот файл из папки (xxx.java)
  3. Щелкните правой кнопкой мыши и подтвердите, затем откроется окно.
  4. Выберите файл, который вы удалили (xxx.java) из папки, и снова щелкните правой кнопкой мыши и удалите .. он удалит файл из SVN.
павана
источник
2
Это приведет к удалению файла - но вопрос не в том, чтобы сохранить исходный файл после его удаления из SVN?
Тимоти Джонс