#svn #branch #revision
#svn #ветка #ревизия
Вопрос:
AFAIK, ветка SVN создает копию всех файлов и присваивает им номер редакции.
Однако, когда я переключаюсь на ветку, номер редакции неизмененных файлов соответствует редакции в магистрали.
Например:
Предположим, у меня в магистрали:
foo.txt 2 trunk
Когда я создаю ветку:
foo.txt 100 branch copy from trunk@2
Но когда я выполняю проверку ветки, я вижу:
foo.txt 2 trunk
Почему в ветке ревизия foo.txt не равно 100?
Ответ №1:
Subversion имеет номер редакции не по элементу, а для всего файлового дерева. И если вы создаете копию в Subversion, это просто ссылка на редакцию, которая является базовой для вашей копии (так называемая дешевая копия в Subversion). Пока вы ничего не меняете в файле, файл будет ссылаться на свое последнее изменение, и это было сделано в магистрали.
Таким образом, номер редакции немного вводит в заблуждение, но верен. И да, это отличается от некоторых других существующих систем контроля версий (особенно CVS).
Ответ №2:
Последняя редакция изменения (для объекта) и последняя редакция фиксации — это разные вещи (последнее изменение все еще существует).
Последнее изменение служит просто информационной точкой, не более того