Есть ли способ автоматически сделать зарегистрированную версию каталога идентичной моей? - PullRequest
0 голосов
/ 12 декабря 2011

Я сделал большое количество изменений в версионном каталоге. Я переименовал, добавил, удалил и сделал много уборки (это каталог ресурсов). Есть ли способ избежать большого количества склонных к ошибкам использования svn delete и svn add, чтобы убедиться, что правильные файлы добавляются / удаляются, или есть способ автоматизации добавления / удаления файлов из системы контроля версий (т.е. единственная команда, которая делает все файлы, существующие в каталоге, версионными, и делает любые отсутствующие файлы версионными)?

1 Ответ

1 голос
/ 12 декабря 2011

Если вы работаете в bash, написать скрипт, который выводит свой список задач из вывода команды status svn, довольно просто:

svn st | grep '^\?' | awk '{print \$2}' | xargs svn add
svn st | grep '^\!' | awk '{print \$2}' | xargs svn rm

(Источник: http://www.plexusweb.com/staff/travis/blog/post/267/Batch-addremove-files-to-Subversion)

Это будет обрабатывать все произошедшие изменения как добавление или удаление файлов, однако, распознавание переименованных файлов является довольно сложной проблемой, так как такой инструмент должен знать, как получить последнюю версию каждого файла с помощью subversion, которая кажется удаленной,а затем сравните его с каждым из «новых» файлов в вашем рабочем каталоге - и, возможно, даже подумайте о небольших изменениях, которые вы могли бы внести (это означает, что сравнение по значению хеша было бы невозможным) - действительно сложная задача!

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