Поместите все измененные файлы в список изменений в SVN - PullRequest
5 голосов
/ 09 января 2012

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

Ответы [ 3 ]

4 голосов
/ 09 января 2012

Ну, вы можете написать скрипт для этого ...

На какой вы платформе?Windows или Unix?Какой язык сценариев вы можете использовать?

Вот очень простой, который я только что сделал:

$ svn cl my-changelist $(svn st | awk '{print $2}')

Возможно, ему нужно немного поработать (что, если я изменил свойство по сравнению с файлом илиЯ изменил оба? Что делать, если я удалил файл?).Но в моей (по общему признанию) простой ситуации это сработало.

1 голос
/ 08 мая 2012

Печать awk $ 2 завершится неудачей, если svn stat покажет вам флаги типа + или ~

сокращение может быть более безопасным, например

svn st | cut -c9-

Мой bash-fu не силен, и синтаксис $ () у меня не сработал. В итоге я сделал что-то вроде:

for i in `svn st | cut -c9-` do; svn changelist my-changelist $i; done
0 голосов
/ 27 апреля 2017
  1. Если у вас более одного списка изменений, вам нужно сначала отфильтровать нерелевантные строки.

    svn status | grep '^[ADMRC]' | cut -c9- | xargs svn changelist foo
    
  2. Если у вас есть имена файлов с пробелами, вам также нужно будет использовать eval.

    eval "svn changelist foo $(svn status | grep '^[ADMRC]' | cut -c9- | sed 's/ /\\ /' | tr '\n' ' ')"
    

    sed 's/ /\\ /' ускользает от пробелов.

Ссылка:

  • http://svnbook.red -bean.com / о / 1,7 / svn.ref.svn.c.status.html * ** 1023 тысяча двадцать-дв *
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...