svn создать патч из нескольких ревизий

Если у меня есть изменения, внесенные в ревизии 11, 13, 17, 20 в ветку, могу ли я создать такой патч svn?

svn diff -r11:20


person treefrog    schedule 29.11.2012    source источник
comment
См. ответ на этот аналогичный вопрос Stackoverflow: stackoverflow.com/a/25283101/1127583   -  person batigolix    schedule 13.08.2014


Ответы (2)


Вы можете, но не забывайте путь, который вы различаете, каноническая 1-я форма svn diff, JFYI, это:

diff [-c M | -r N[:M]] [TARGET[@REV]...]
person Lazy Badger    schedule 29.11.2012
comment
как насчет изменений, внесенных в версии 12, 15, 16 и 17? они тоже будут в патче? - person treefrog; 29.11.2012
comment
@treefrog - патч собирает только изменения, связанные с путями, если упомянутые ревизии находятся за пределами дерева различий, они будут проигнорированы - person Lazy Badger; 29.11.2012
comment
Что делать, если ревизии 12, 15, 16 и 17 находятся в пути, но не имеют отношения к исправлению, которое я хочу создать? Можем ли мы выборочно игнорировать их? - person Mukul Gupta; 02.05.2016
comment
@MukulGupta - в в этом случае вам нужно использовать -c и перечислять все необходимые ревизии. - person Lazy Badger; 03.05.2016
comment
@LazyBadger: но svn не может принимать несколько аргументов -c - person Mukul Gupta; 03.05.2016
comment
@MukulGupta - неправильно. Извлечение из svn help merge Вы также можете выбрать несколько ревизий и/или диапазонов ревизий: svn merge -c50,54,60 -r65:68 ^/trunk - person Lazy Badger; 03.05.2016
comment
@LazyBadger: Хорошо. Спасибо. Я имел в виду использование svn diff, а не svn merge. Я хочу создать патч из предыдущих коммитов. Я не хочу, чтобы merge сгенерировал патч и применил его. - person Mukul Gupta; 03.05.2016

этого должно быть достаточно :)

svn diff -rFIRSTREVISION:LATESTREVISION pathOfWorkingCopy > /myPatchFile.patch
person jorgevasquezang    schedule 09.02.2015