Отменить добавление SVN без возврата локальных правок - PullRequest
151 голосов
/ 22 февраля 2011

Я случайно запустил svn add * и добавил кучу файлов, которых не должно быть в хранилище.У меня также есть локальные правки в некоторых файлах, которые я хочу сохранить.Есть ли простой способ просто отменить svn add без возврата локальных правок?Основное предложение, которое я вижу в Google, - svn revert, который якобы отменяет локальные изменения.

Ответы [ 4 ]

275 голосов
/ 20 ноября 2011

Это было бы:

svn rm --keep-local .

То же самое случилось со мной.: -P

(конечная точка примечания)

34 голосов
/ 12 апреля 2012

Если эти файлы находятся в каталоге, который еще не был зафиксирован, вы можете удалить все содержимое каталога из следующего коммита, выполнив:

svn delete --keep-local /path/to/directory

Однако, если эти файлы уже находятся в репозитории и теперь содержат изменения, которые вы не хотите фиксировать, вы можете зафиксировать остальные файлы с помощью списков изменений:

svn changelist somename /file/to/be/committed
svn commit --changelist somename
6 голосов
/ 29 октября 2013

Исправить оформление заказа можно следующим образом:

  1. Резервное копирование локальных файлов
  2. Восстановление проверки SVN
  3. Восстановление файлов

-

rsync -av --exclude .svn/ YOURDIR/ YOURDIR.bak
svn revert -R YOURDIR
rsync -av YOURDIR.bak/ YOURDIR 
2 голосов
/ 24 июня 2015

У меня была такая же проблема, я случайно добавил каталог / через svn add, который содержит двоичные файлы и скомпилированный файл.Эта команда фактически удаляет каталог.

svn rm --force <directory-name>

В моем случае мне не нужен каталог, поэтому его можно было безопасно удалить.Если вы хотите сохранить файлы / каталоги, сохраните их в месте до применения команды и после копирования их обратно

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