Intereting Posts
Инструмент Merge / diff, который может показывать авторов (поддерживает вину или аннотацию) в файлах под контролем версий Загрузка платформы Entity Framework в Team Foundation (контроль источника) Как эффективные процедуры хранения версии? Проверка Tortoise svn новичка GIT Push to Bare Clarification VersionControlServer – получить последнюю версию файла в определенную дату / время Неэффективная обработка переименований файлов в Mercurial svn сохраняет функциональную ветвь до даты без закрытия ветки Есть ли какая-либо опасность для включения функциональных исправлений в git merge Commit? Все-в-1 децентрализованное управление проектами git + tickets + wiki Как управлять несколькими ветвями релиза в подрывной деятельности? Могут ли другие люди совершить мой репо? Слияние функциональных ветвей с несколькими авторами Система управления версиями в локальной сети без сервера Как удалить файл из Git в IntelliJ VCS?

Правильная процедура для SVN

Благодаря некоторой предыдущей помощи здесь, с SVN, я начал продвигаться с внедрением SVN в нашу компанию. Я использую Tortoise SVN, и я немного не уверен в правильных рабочих процедурах для создания обновлений. Это процедура Im в настоящее время, но есть 3 вопроса (выделены полужирным шрифтом).

  1. Когда я впервые создал сайт, я создал локальный рабочий каталог D: \ Sites {mywebsite}
  2. Я выпустил веб-сайт, все связал с багажником и создал тег под названием «Версия 1.0»
  3. Теперь мне нужно создать некоторые обновления, поэтому я создал ветку из сундука под названием {my-branch} Question – всякий раз, когда я хочу создать ветвь, мне нужно проверить ствол в локальном рабочем каталоге, а затем использовать brancg / tag в Tortoise? Кажется, что нет способа сделать это с черепахой без локальной рабочей копии.
  4. Я использовал команду switch для изменения моего локального рабочего каталога с соединительной линии на {my-branch}
  5. Как только я закончу внесение изменений в ветку, и im удовлетворенное работает, мне нужно объединить ветку и туловище. Вопрос: я не уверен, что я должен делать здесь. Я схожу с сундуком в свою рабочую копию (которая теперь является специфической ветвью), или я объединяю свою ветку обратно в багажник?
  6. Вопрос. Как только я выпустил изменения, должен ли я создать другой тег версии 1.1 / 2.0 и т. Д.?

Основываясь на очень хорошей обратной связи Актона, я просто обновляю вопрос, чтобы прояснить один последний момент:

1) 1 января я создаю ветку под названием «реализация нового загрузчика». Я проверяю код на свою рабочую копию и вношу изменения до 20 января (проверка на ветку, когда я иду).

2) В течение этого времени два члена команды создали свои собственные филиалы, выпустили изменения и слились обратно в багажник.

3) 1 февраля я готов выпустить. По обратной связи Актона я объединяю текущий сундук в свою рабочую копию (которая является моей ветвью). Я разрешаю какие-либо проблемы, а затем я делаю все обратно в свою ветку ? Теперь это будет содержать два обновления кода, которые мои два коллеги также объединили в филиал. Я не был уверен, должен ли мой филиал также содержать другие обновления от других членов команды?

4) Наконец, я объединил свою ветку обратно в багажник – но это должно быть предельно просто, потому что моя ветка теперь почти зеркальное изображение ствола, но теперь она содержит только мои обновления?

Если мое понимание, перечисленное выше, верное, я думаю, что у меня оно есть!

Спасибо за вашу помощь.

С уважением, Al

Solutions Collecting From Web of "Правильная процедура для SVN"

Вопрос. Когда я хочу создать ветвь, я должен проверить ствол в локальном рабочем каталоге, а затем использовать параметр brancg / tag в Tortoise? Кажется, что нет способа сделать это с черепахой без локальной рабочей копии.

Нет, вам не нужна локальная копия для создания ветки. Вы можете сделать это в браузере репо Tortoise SVN из меню правой кнопки мыши. См. http://tortoisesvn.net/docs/release/TortoiseSVN_en/tsvn-dug-repobrowser.html для получения дополнительной информации.

Вопрос: я не уверен, что я должен делать здесь. Я схожу с сундуком в свою рабочую копию (теперь это конкретная ветка), или я слияю свою ветку обратно в багажник?

Вы объедините все оставшиеся изменения в своей рабочей копии обратно в ветвь, затем объедините ветвь в магистраль. Цель состоит в том, чтобы вернуть изменения в ветку обратно в багажник.

[Изменить: изменил следующий абзац]. Однако на практике после того, как рабочая копия будет передана ветке, лучше сначала слить рабочую копию соединительной линии -> и разрешить любые конфликты, особенно если многие изменения были внесены в соединительную линию, поскольку была создана ветка. Как только это будет сделано, слияние рабочей копии -> branch -> trunk должно быть простым и вызвать наименьшее нарушение для других.

Вопрос. Как только я выпустил изменения, должен ли я создать другой тег версии 1.1 / 2.0 и т. Д.?

Это зависит от вашей стратегии маркировки. Помните, что каждый фиксатор имеет уникальный номер версии, с которым вы всегда можете ссылаться. Теги позволяют быстро находить или ссылаться на ревизии, используя более понятное человеческое имя. См. Также Лучшая практика для тегов SVN? ,

[Изменить: Добавлено]

3) 1 февраля я готов выпустить. По обратной связи Актона я объединяю текущий сундук в свою рабочую копию (которая является моей ветвью). Я разрешаю какие-либо проблемы, а затем я делаю все обратно в свою ветку ? Теперь это будет содержать два обновления кода, которые мои два коллеги также объединили в филиал. Я не был уверен, должен ли мой филиал также содержать другие обновления от других членов команды?

Да. Скопируйте изменения обратно в ветку (чтобы они были скопированы в исходное управление) и объединить изменения обратно в основной. Цель состоит в том, чтобы обеспечить слияние обратно в багажник нарушает работу команды как можно меньше. Вы можете проверить свое приложение за пределами филиала заранее, чтобы все изменения работали по назначению, и ошибок не было создано непреднамеренно.