Найти ревизию в стволе, из которого была создана ветка - PullRequest
65 голосов
/ 07 июня 2011

Я пытаюсь объединить последние изменения из ствола в ветку моего проекта, но проблема в том, что я не знаю, из какой ревизии ствола я проверил, что я в итоге создал ветку.Я думаю, что SVN записал это где-нибудь.Кто-нибудь знает, как я могу найти номер ревизии?

(Другими словами, Subversion эквивалент git merge-base master branch-name)

Ответы [ 5 ]

74 голосов
/ 07 июня 2011

Из командной строки флаг --stop-on-copy может использоваться, чтобы помочь вам показать, откуда вы скопировали ветку:

svn log --stop-on-copy --limit 1 -r0:HEAD ^/branches/feature

Последняя строка скажет что-то вроде этого:

Changed paths:
   A /branches/feature (from /trunk:1234)
14 голосов
/ 03 декабря 2015

Возможно, немного поздно, но.

Если вы сейчас находитесь в ветке, вы можете запустить:

svn log -r 1:HEAD --limit 1 --stop-on-copy

Отображает первую ревизию ветви, т.е. когда вы ее создали.

13 голосов
/ 07 июня 2011

Используете ли вы TortoiseSvn или командную строку?

Командная строка: svn log --stop-on-copy, а затем посмотрите на наименьшее число оборотов.

Черепаха СВН: right-click, tortoise-svn, show log, make sure 'stop on copy' is *checked* and press refresh. Scroll to the bottom and find the smallest rev number. enter image description here

2 голосов
/ 07 июня 2011

Если вы использовали svn copy для создания tag/branch, то svn log может сообщить вам, откуда скопированы ваши материалы в ветке.Например, допустим, у нас есть svn://svn/trunk/foo, и мы создали ветвь svn://svn/branches/super_foo.Запустите svn log -v svn://svn/branches/super_foo, он скажет вам что-то вроде этого - /branches/super_foo from /trunk/foo:22890, что означает, что вы скопировали ревизию 22890 транка в вашу ветку.

0 голосов
/ 11 апреля 2014

Для приложения Cornerstone, чтобы увидеть, где произошел тег или ветвь, посмотрите на временной шкале.

...