Ответ 1
То, для чего предназначены теги. См. Теги в svn-book.
Есть ли способ сделать что-то похожее на метку SourceSafe в svn? Я знаю о bransch/tag, но я хотел бы иметь более легкий способ просто указать имя для конкретной версии.
То, для чего предназначены теги. См. Теги в svn-book.
Тэги в Subversion - правильный способ сделать это. Они могут не выглядеть "легкими", потому что они являются копиями дерева, но поскольку копии Subversion очень ленивы, они не занимают места на диске, кроме того, которое используется для записи транзакции "copy/trunk/to/tags/whatever". Книга Subversion имеет дополнительную информацию об тэгах.
Тег очень легкий, хотя он сделан из команды "copy".
В подрывной деятельности копии очень просты, быстры и эффективны. Вы не должны беспокоиться о производительности или пространстве для хранения.
Хотя этот вопрос был опубликован в течение довольно долгого времени и был представлен правильный ответ на использование тегов (неоднократно:-) Я считаю, что самые полезные ответы дают не только правильную информацию, но и всестороннюю информацию: пищу для размышлений, понимание дальнейших действий и т.д. Я написал длинную статью, которая делает именно это, недавно опубликованное как часть 6 моей TortoiseSVN и Subversion Cookbook (на Simple-Talk.com). Один из рецептов (перемещение тега) даже затрагивает соответствующий вопрос, поднятый AnT в его/ее ответе, и дает веский аргумент в пользу того, почему вы не должны этого делать.
Вот список рецептов в этой главе, чтобы поднять ваш интеллектуальный аппетит:
Управление ярлыками
Настройка внешнего вида с помощью ярлыков и исправлений
Вы должны использовать теги для этого.
Как изменить положение метки в журнале изменений?
Пример: Я создал тег с именем "производственная версия", который отмечает файл file1.txt в редакции 8, и несколько дней спустя я хочу, чтобы тот же тег сказал мне, что file1.txt помечен в ревизии 16
В VSS вы можете "переместить метку" в журнале изменений в этом сценарии. В SVN я бы не хотел создавать "производственную версию1", "производственную версию2"...
Если вы не хотите использовать ветки тегов, вы можете использовать номер версии.
Поскольку SVN увеличивает значение revnum, так что каждая проверка уникальна, каждый revnum становится моментальным снимком всего репо в данный момент времени. Итак, если вы знаете, что вы проверили флажок "tag 1.0", и ему был назначен revnum 232, вы можете воспроизвести этот checkin (т.е. Получить все файлы из этой метки), проверив ревизию 232. Это так же просто, как это.
Однако в SVN нет возможности связывать текст, читаемый человеком, с номером ревизии, поэтому вам придется самим отслеживать их (или найти пакет softare, который сделает это для вас).
Я думаю, что если вы создадите тег из номера версии вашей внешней линии, вы можете начать просматривать журналы туловища.