Subversive: не может зафиксировать файлы в папке тегов - PullRequest
10 голосов
/ 17 декабря 2008

Я использую Zend Studio 6.1 для Eclipse, которая поставляется в комплекте с плагином Subversive.

Мой макет репо:

/trunk/
/branches/
/tags/

Код моего приложения:

/trunk/application

Я пытаюсь добавить несколько шаблонов представления в:

/trunk/application/views/tags/index.tpl

НО Subversive не позволит мне зафиксировать какие-либо файлы в этой папке. Сообщение, которое он дает мне:

"Вы собираетесь изменить тег на хранилище. хотите ли вы продолжить? "

Так что я говорю "нет". Кажется, это путает мою папку 'tags' с концепцией тегов SVN.

Я не могу переименовать папку, потому что используемая мной среда применяет строгие соглашения об именах между контроллером и представлением. У меня есть tagController, поэтому мои представления должны быть в / views / tags

Я мог бы переименовать контроллер в нечто иное, чем «теги», но это отстой, потому что тег - это тег, а не шмаг;)

Есть идеи как обойти это?

Ответы [ 6 ]

20 голосов
/ 17 декабря 2008

На самом деле нормально сказать «Да» на это предупреждение.

Общая схема управления версиями состоит из трех корневых папок:

/trunk
/tags
/branches

Как только сборка транка выпущена, текущее содержимое транка копируется в папку (например, «Апрель 2008 версия 1.3» или что-то в этом духе) в тегах. Вообще говоря, эту папку не следует изменять, поскольку она представляет конкретную сборку в определенный момент времени, поэтому Subversion предупредит вас, если вы попытаетесь изменить в ней файлы.

Тем не менее, в вашем случае у вас есть папка, которая просто называется «тегами» и содержит код транка, а не код с тегами, поэтому совершенно правильно сказать «Да» на это предупреждение и продолжить коммит ,

Для получения дополнительной информации прочитайте книгу SVN, в частности Теги и Рекомендуемая структура репозитория

1 голос
/ 17 декабря 2008

Subversion просто пытается предупредить вас, что вы можете случайно зафиксировать тег - то есть версию кода с меткой - что при обычном использовании вы никогда не сделаете.

В вашем случае, я полагаю, у вас есть папка с тегами, в которой вы работаете над материалом типа taglib. Возможно, вы захотите назвать это как-то иначе, чтобы предотвратить предупреждение, но в вашем случае это звучит как фальшивое.

1 голос
/ 17 декабря 2008

Может быть, изменить другой плагин? «теги» и «ветки» - это одно и то же внутри svn, только логическое представление о них как о пользователях делает их разными Вы должны быть в состоянии - даже если это не очень хорошая идея ИМО - совершать здесь.

Это одна из моих проблем с SVN BTW, ветки и теги разные вещи.

0 голосов
/ 02 марта 2009

См. в этом посте , где более длинное объяснение того, почему всплывает предупреждение: -)

0 голосов
/ 31 января 2009

Я наконец-то заработал. Я могу только предположить, что это ошибка в плагине Zever Studio для Eclipse Subversive.

Если я попытаюсь выполнить фиксацию, щелкнув правой кнопкой мыши по файлам в «PHP Explorer», произойдет сбой. Если я "Переопределить и зафиксировать" через "Команда -> Синхронизировать с репозиторием", это будет нормально.

0 голосов
/ 17 декабря 2008

Транк транк обычно должен представлять текущую рабочую копию вашего приложения, ветви предназначены для поддержки работы с предыдущей версией приложения (как, например, в Firefox, они все еще выпускают исправления ошибок до версии 2.0, в то время как последняя версия находится в стволе. Теги используются только для обозначения определенного выпуска вашего приложения, это позволяет удобно проверить, каким был код в конкретном выпуске.

Почему вы пытаетесь изменить помеченные файлы?

...