SVN/ Tortoise - Генерация ярлыков
-
20-08-2019 - |
Вопрос
В Clearcase я могу сгенерировать "метку" для заданного набора файлов и всегда возвращаться к этой метке, чтобы восстановить все файлы такими, какими они были, когда я создавал метку.
Как мне сделать это в Subversion?Я использую интерфейс Tortoise [Windows] для SVN, и я не уверен, как реализовать эту функциональность.
Решение
На самом деле в SVN каждая фиксация создает "метку".Вы можете вернуться к каждой ревизии (фиксации) в любой момент.
Есть нет разницы между веткой и тегом в теории.Просто ветка развивается дальше и объединяется с коммит-кодами от разных разработчиков, в то время как никто никогда не должен фиксироваться на теге.
Тегам обычно присваивают более подробное название, например "RC 1.5 - день, когда, наконец, казалось, что он стал стабильным".
Это объясняет, почему 'Create branch / tag' в Tortoise - это одно целое.
И, по сути, svn просто создает копию последней редакции в другой каталог (напримертеги).Эта копия, конечно, не полная копия, а обычный diff, поэтому непрерывные номера версий.
Другие советы
Эквивалентом метки в subversion является "тег" (т.е.создание ветви в папке с конкретной целью пометки редакции).В браузере репозитория щелкните правой кнопкой мыши "Скопировать в ...", а затем выберите новое имя папки.
http://svnbook.red-bean.com/en/1.5/svn.branchmerge.tags.html
Tags
являются эквивалентом меток в Subversion.
Теги создаются с помощью copy
команда, или в TortoiseSVN Branch/Tag
опция меню.
По соглашению, tags
копируются в tags
путь в репозитории Subversion.
Кстати, справка TortoiseSVN действительно хорошо сделана - Руководство по ежедневному использованию это очень полезно.
Вы могли бы сделать это двумя способами.
Зафиксируйте текущее состояние файлов, теперь вы всегда можете вернуться перейдите к этой редакции и верните то состояние ваших файлов
Создайте новый тег с вашими текущими файлами и продолжайте работать в магистрали.
Используйте svn copy и создайте копию в папке tags.Это скорее условность, чем что-либо другое, но большинство репозиториев будут иметь папки, называемые trunk, tags и branches.
Не беспокойтесь о создании дополнительных копий - на самом деле это не дублирование всех этих файлов -- копии в subversion дешевы.
Например:
svn copy /trunk/foo /tags/foo-1.0