Как извлечь выгоду из SVN в веб-разработке - PullRequest
0 голосов
/ 14 января 2010

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

У меня есть некоторый предыдущий опыт использования SVN, после нескольких часов игры с TortoiseSVN локально на компьютере с XP, но, честно говоря, я так и не получил от этого удовольствия.

Однако кажется, что пришло время переосмыслить SVN и действительно попытаться дать ему честный шанс. Я бы, по крайней мере, поспал бы лучше, если бы знал, что версионные резервные копии каждого файла были доступны, и было легко откатить изменения в веб-приложениях всякий раз, когда что-то попадает в вентилятор. Тем более, что приложение становится больше.

В настоящее время я работаю исключительно с PHP в Eclipse и развертываю все файлы для бета-среды через FTP.

Я читал большинство постов здесь об использовании Eclipse с плагинами SVN, но я действительно не понимаю, как будет выглядеть рабочий процесс при использовании SVN.

Должен ли я регистрироваться каждое утро в своем хранилище, делать то, что я делаю лучше всего, и в конце дня вносить все изменения?

Как будет сохраняться синхронизация между локальной файловой структурой, репозиторием SVN и несколькими средами (live env., Testing env. И т. Д.)?

Расскажите, как выглядит ваш рабочий процесс при использовании SVN!

Ответы [ 3 ]

4 голосов
/ 14 января 2010

Вы можете начать с просмотра бесплатной онлайн-книги:

В главах 1 и 2 рассматриваются фундаментальные концепции и основное использование Subversion. Затем в остальных главах рассматриваются более сложные темы.

2 голосов
/ 14 января 2010

Вот мои шаги с SVN для того, что я делаю:

  1. Ветка для работы с ошибкой / функцией -> Когда я начинаю работать над ошибкой или функцией, я создаю новую ветку, в которой пересматривается основная версия кода, так что я в своей собственной песочнице. 1005 *

  2. Когда я исправил ошибку или завершил работу функции, затем переключился обратно в основную ветвь и объединился в исправлении, чтобы он стал частью следующего кода, добавленного в dev clean или test. Хотя это не совсем просто, это не так больно, как можно бояться.

Периодически есть и другие вещи:

  1. Очистка старых веток -> По мере появления функций и ошибок иногда стоит вернуться и сократить выполненную работу, чтобы папка не стала огромной в Repo-браузере.

  2. Обновите код на моем ящике -> Иногда я немного перехожу между функциями и ошибками, хотя я все же хотел бы как можно больше обновлять код на своем компьютере.

1 голос
/ 14 января 2010

Хм,

Если я могу упомянуть небольшое приложение, над которым я сейчас работаю, dashy: http://www.mirios.com.au/dashy, оно обрабатывает то, что вас беспокоит со стороны развертывания / конфигурации (откат изменений, обработка конфигурации нескольких сред: dev / staging / live и т. д.) и в настоящее время подходит только для Windows + SVN. (Однако начало работы с ним будет немного сложным, и документация не совсем полная, хотя и дает представление).

Что касается того, как использовать SVN в целом, у вас есть сервер сборки, и вы используете систему CI для автоматизированных сборок, затем вы фиксируете свой сервер CI (мы используем CruiseControl.NET, Hudson может сделать это как Что ж). В дополнение к этому вы, как правило, обновляете утром, чтобы проверить, вносил ли кто-либо в команду соответствующие изменения, и при необходимости используете ветки и теги.

Это довольно сложно, (но не совсем), и как только вы начнете и установите все, жизнь должна быть довольно хорошей (независимо от того, используете ли вы dashy).

...