SVN для автоматического обновления на основе моего каталога без вручную "SVN RM ..." - PullRequest
0 голосов
/ 10 августа 2010

Есть ли команда svn, чтобы сообщить хранилищу автоматически «rm» файлов в репо, которые существуют в репо, но не в моем каталоге?

немного объяснения:

У меня есть собственный проект на Google Code. В моем локальном каталоге я удалил много файлов. Теперь я хочу совершить. Тем не менее, я не помню, какие файлы я удалил. Это кажется довольно громоздким, чтобы выяснить (например, сделайте резервную копию моего dir, обновите dir и измените dir, а затем сгенерируйте список файлов для «svn rm f1 f2 ...»)

я знаю, что в svn правильный способ удалить файл - это сначала вызвать «svn rm fname», который удалит файл для вас. Но вкратце ... у меня вышеописанная ситуация.

Ответы [ 5 ]

2 голосов
/ 10 августа 2010

Это ДОЛЖНО работать.Используйте на свой страх и риск - лучше создайте резервную копию перед запуском:

svn st | grep "^!" | gawk '{print $2}' | xargs svn rm
2 голосов
/ 10 августа 2010

Я только что попробовал следующее в моей системе Mac OS X, и, похоже, это сработало:

$ svn status -q | grep '! ' | awk '{ print $2 }' | xargs svn rm

Это ничего не фиксирует, просто выдает команду svn rm для вас. Надеюсь, это поможет!

РЕДАКТИРОВАТЬ: Это не правильно обрабатывает файлы с пробелами в имени (например, «My text file.txt»), но это должно работать для имен файлов без пробелов.

1 голос
/ 10 августа 2010

Если вы фиксируете корневую папку вашей рабочей копии, Subversion должна заметить, что файлы отсутствуют в рабочей копии. По крайней мере, TortoiseSVN предлагает также удалить эти файлы из репозитория - я не знаю, как клиент командной строки обрабатывает это.

1 голос
/ 10 августа 2010

Не то, что я знаю.

svn status дает вам обзор текущего статуса вашего рабочего каталога. Файлы с префиксом! отсутствуют (удалены, но не svn rm'd).

0 голосов
/ 11 июня 2015

Вы могли сделать svn up, выбрать список и затем svn rm восстановленных файлов.

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