Новичок в SVN, как настроить? - PullRequest
2 голосов
/ 08 мая 2009

У меня есть Windows 2003 Server с IIS, я установил VisualSVN Server на нем.

У меня есть два разработчика, которые собираются использовать TortoiseSVN.

Поскольку я впервые настраиваю сервер SVN, я не совсем понимаю, как все это будет работать. На мой взгляд, у каждого разработчика должна быть копия репозитория на его или ее локальном компьютере. Потребуется ли каждому человеку установить IIS на свой ПК, чтобы проверить свои копии перед проверкой?

Должен ли я создать тестовую папку на сервере и затем подготовить к работе? Кажется, что это вызвало бы больше проблем с копиями?

Что бы вы сделали?

EDIT

Я не знаю, о чем я думал, я забыл, что VS имеет встроенный IIS при отладке, поэтому проблема с настройкой IIS на клиенте или сервере теперь не проблема. Но я в замешательстве, я импортировал сайт в репозиторий, он сказал, что он находится на ревизии 2, но я не вижу никаких файлов в папке репо. Создать ли в IIS виртуальную папку, указывающую на созданное мной репо?

Ответы [ 9 ]

4 голосов
/ 08 мая 2009

Нет, каждый разработчик использует ваш репозиторий и проверяет свои копии для выполнения своей работы. Им не нужны IIS или svn и т. Д., Установленные в их системах.

Я рекомендую прочитать в Subversion FAQ .

2 голосов
/ 08 мая 2009

У ваших разработчиков нет локального репозитория, у них есть рабочая копия на их ПК. Как правило, это самая последняя версия приложения с изменениями, внесенными разработчиками, но еще не зафиксированными.

Поскольку это веб-приложение, вашим разработчикам потребуется локальный веб-сервер для его тестирования - это может быть IIS или встроенный веб-сервер Visual Studio (хотя он ведет себя по-разному по сравнению с IIS тонкими способами).

Вы сказали в комментарии: «Моя проблема в том, что я не хочу, чтобы разработчики фиксировали сайт в случае ошибки».

Разработчики фиксируют SVN-репозиторий на сервере: в какой-то момент вы захотите экспортировать (или «опубликовать») копию из последней версии в вашем репозитории на ваш действующий сайт. Чтобы убедиться, что это работает, вы можете проверить конкретную версию с сервера, протестировать ее и, если она пройдет тесты, загрузить ее: devs всегда будет проверять код с ошибками (даже если он собирается), так как лучше проверить кодировать чаще, чем создавать множество изменений локально, а затем фиксировать их, так как неизбежно возникают конфликты с работой, выполненной другими разработчиками.

Ветвление и тегирование являются здесь полезными понятиями: если у вас есть почти правильная версия, вы «ветвите» ее вдали от основного «ствола» дерева исходного кода, исправьте все проблемы в ветке (перенесите основной ствол по мере необходимости), затем, когда у вас есть рабочая версия, вы 'помечаете' ее (как версию xyz) и загружаете ее. Таким образом, вы всегда можете ссылаться на конкретную версию загруженного вами кода, что значительно упрощает выявление ошибок, которые появляются в работе. Как другие предлагали, прочитайте документацию SVN для получения дополнительной информации.

0 голосов
/ 08 мая 2009

Я использовал следующие ресурсы для изучения SVN:

http://www.polymorphicpodcast.com/shows/subversion/

http://www.dimecasts.net/Casts/ByTag/SVN

Находится и неплохо, и изучение с помощью просмотра может быть легче, особенно для начала.

0 голосов
/ 08 мая 2009

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

У вас действительно есть несколько вещей, которые нужно выяснить, если вы хотите выполнить успешное развертывание Subversion.

Одна действительно хорошая статья о настройке Subversion в Windows - https://blog.codinghorror.com/setting-up-subversion-on-windows/

0 голосов
/ 08 мая 2009

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

Если вы используете черепаху на сервере, выполните первоначальную проверку в каталоге inetpub / website, а затем при развертывании вам просто нужно обновить каталог, используя tortoise-> update

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

0 голосов
/ 08 мая 2009

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

Установите SVN на одном сервере, и пусть все ваши разработчики указывают на него.

0 голосов
/ 08 мая 2009

Нет, сервер SVN должен быть установлен на одном компьютере. Каждый разработчик указывает на этот компьютер и получает локально (и в конечном итоге) полную копию или частичную копию хранилища.

Вы также можете купить у О'Рейли книгу о Subversion. Не помню название, извините, но оно мне очень помогает.

Всего наилучшего! Sylvain.

0 голосов
/ 08 мая 2009

Нет, нет локальных репозиториев. Настроить SVN легко, ну почти. Вы захотите найти установщик Windows SVN и установить его на сервере. Вы захотите установить Apache, а затем у вас возникнет небольшое препятствие при настройке файла http.conf для предоставления svn через http. С настройкой безопасности есть небольшая сложность, так что используйте аутентификацию Windows, вам понадобится WebDav, Google.

Как только это будет сделано, любой svn-клиент сможет нажать его, получить копию и работать с SVN в обычном режиме. Если вы действительно застряли, прокомментируйте здесь, и я пойду за копией нашей установки и конфигурации для вас.

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

0 голосов
/ 08 мая 2009

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

...