Какая команда svn выведет список всех файлов, измененных в ветке - PullRequest
71 голосов
/ 02 октября 2008

В svn у меня есть ветвь, которая была создана, скажем, в ревизии 22334. Затем были сделаны коммиты на ветке.

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

Ответы [ 6 ]

77 голосов
/ 02 октября 2008

Это будет делать, я думаю:

svn diff -r 22334:HEAD --summarize <url of the branch>
40 голосов
/ 06 марта 2011

Вы также можете получить быстрый список измененных файлов, если это все, что вы ищете, используя команду состояния с опцией -u

svn status -u

Это покажет вам, какая версия файла находится в текущей базе кода по сравнению с последней версией в хранилище. Я использую diff только когда я действительно хочу увидеть различия в самих файлах.

Здесь есть хороший учебник по команде svn, который объясняет многие из этих распространенных сценариев: Справочник по командам SVN

13 голосов
/ 21 июня 2012

Это будет список только измененных файлов:

svn status -u | grep M
11 голосов
/ 25 октября 2017

Вы можете использовать следующую команду:

svn status -q

Согласно svnbook :

With --quiet (-q), it prints only summary information about locally modified items.

ВНИМАНИЕ: Вывод этой команды показывает только вашу модификацию. Поэтому я предлагаю сделать svn up для получения последней версии файла, а затем использовать svn status -q для получения файлов, которые вы изменили.

2 голосов
/ 09 августа 2012
echo You must invoke st from within branch directory
SvnUrl=`svn info | grep URL | sed 's/URL: //'`
SvnVer=`svn info | grep Revision | sed 's/Revision: //'`
svn diff -r $SvnVer --summarize $SvnUrl
2 голосов
/ 28 марта 2012
Опция

-u будет отображать включая объектные файлы, если они были добавлены во время компиляции.

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

svn status -u | grep -v '\?' 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...