Посмотрите, когда каталог был разветвлен / помечен в SVN - PullRequest
2 голосов
/ 23 июня 2011

В настоящее время я работаю над выпуском большого проекта.

Мне просто нужно знать, был ли каталог изменен в стволе после того, как был помечен (поэтому нам нужно создать новый тег и выпустить новую версию).

Я могу использовать TortoiseSVN, CLI и Subclipse.

Пробовал с графиком ревизий, но не нашел ничего полезного ... (или, по крайней мере, я не смог его правильно использовать)

Спасибо

Ответы [ 4 ]

3 голосов
/ 23 июня 2011

Вам нужно сделать это в два этапа:

  1. Получить версию с тегом. Это можно сделать, проверив ревизию создания тега, в командной строке используйте svn info и проверьте последнюю измененную версию.
  2. Проверьте наличие изменений в исходном каталоге после этой ревизии. В командной строке используйте svn log -r 470:HEAD, где 470 - номер редакции, найденный на шаге 1.
1 голос
/ 23 июня 2011

Мне просто нужно знать, был ли каталог изменен в стволе после того, как он был помечен (поэтому нам нужно создать новый тег и выпустить новую версию).

Это может вас заинтересовать: не задумывались ли вы об использовании системы непрерывной сборки, такой как Jenkins . Каждый раз, когда кто-то делает коммит, Дженкинс запускает сборку.

Итак, как это поможет вам? Проще говоря, вы можете использовать Jenkins для пометки и маркировки сборки, в которой она была помечена прямо в Jenkins. Вы можете просто посмотреть на веб-страницу проекта и увидеть, какие сборки были помечены. Если после последней пометки будет новая регистрация, Дженкинс построит ее. И вы увидите это прямо в Дженкинс. Более того, Дженкинс может даже автоматически пометить его для вас.

Это позволяет разработчику легко увидеть сборку, результаты сборки, изменения, почему эти изменения произошли, и кто их сделал. Если у вас есть система отслеживания дефектов, Jenkins может ссылаться на нее, обновлять созданные проблемы и предоставлять ссылку на проблему непосредственно из Jenkins.

Jenkins может запускать и составлять диаграммы тестирования, которое вы делаете, запускать программное обеспечение для разработки, такое как Checkstyle и Findbugs (http://findbugs.sourceforge.net/),), и даже отмечать сборки, которые не соответствуют вашим безупречным стандартам. Он отправит разработчикам электронное письмо после того, как каждая плохая сборка, чтобы они могли позаботиться о проблеме.

Jenkins прост в настройке и прост в администрировании.

Это не совсем то, что вы спросили, но Дженкинс может просто сделать трюк.

1 голос
/ 23 июня 2011

Полагаю, из корневого каталога вы можете запустить

svn log path/to/directory --verbose

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

http://svnbook.red -bean.com / о / 1,5 / svn.ref.svn.c.log.html

0 голосов
/ 23 июня 2011

Единственный способ точно узнать, соответствует ли текущий транк данному тегу, - запустить что-то вроде svn diff --summarize ^/trunk/ ^/tags/foobar.Это потому, что теги в subersion являются не чем иным, как соглашением об именах для каталогов.Любой существующий тег может представлять собой комбинацию нескольких ревизий, скопированных из любого места в хранилище.

...