2009-05-08 3 views
2

У меня есть Windows 2003 Server с IIS, я установил на него VisualSVN Server.Новое в SVN, как настроить?

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

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

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

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

EDIT

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

+0

Я думаю, что когда он упоминает IIS, он говорит об IIS для тестирования своего кода - не IIS для SVN. Некоторые из ответов, похоже, путают эту проблему. Или, может быть, я читаю это неправильно? – Tim

ответ

4

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

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

+0

Да, прочитайте фас, кажется, что у вас есть немного исследований, прежде чем устанавливать это. –

+0

Я видел это, (http://subversion.tigris.org/faq.html # website-auto-update) didnt предлагает много информации, за исключением того, что мне нужно установить hook, исходный код, похоже, для linux, хотя –

0

Это зависит от того, как вы работаете. Есть other discussions о структуре папок и таких, которые непосредственно играют в управление версиями.

0

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

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

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

+0

Когда я установил VisualSVN, он сказал, что он установил apache, и я убедился, что использовал проверку подлинности Windows. Поэтому я думаю, что там хорошо. Моя проблема в том, что я не хочу, чтобы разработчики брали на живой сайт в случае появления ошибки. Единственное, что я вижу, это A) они устанавливают локальную копию IIS, которая будет иметь свою копию репо на своем ПК и проверять там. Или B) Создайте локальные сайты на сервере, где они могут проверять наличие ошибок и т. Д. –

+0

Существует довольно стандартная практика, и вокруг цикла разработки есть несколько хороших книг, посмотрите Корабль в серии Pragmatic Programmers. День в жизни Dev. 1. Оформить проект из SVN в свою локальную область разработки. 2. Разрабатывайте и тестируйте проект с iis в своем локальном ящике или со встроенным сервером Cassini. 3. Обновите свой источник еще раз, чтобы получить другие изменения. 3. Вернитесь в репозиторий svn. 4. Повторите для каждой части функциональности. Обратите внимание, что живой сайт не должен подключаться к репозиторию, человеку это необходимо. –

-1

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

Вы также можете купить книгу от O'Reilly о Subversion. Не помню название, извините, но мне это очень помогает.

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

+0

Зачем мне устанавливать SVN Server на каждом ПК? Не будет ли сервер SVN установлен только на сервере, и кто когда-нибудь собирается проверить версию клиента SVN, такую ​​как TortoiseSVN, в моем случае? –

+0

Мой ответ был не ясен. Ты прав. Когда я сказал: «на одном ПК», я имел в виду: «на одном ПК, действующем как сервер». В может быть старая коробка. Кроме того, вы правы в отношении клиента: каждому разработчику нужна копия Tortoise и/или AnkhSVN. Примечание: книга «Контроль версий с Subversion», OReilly. Вы можете прочитать БЕСПЛАТНО здесь: http://svnbook.red-bean.com/en/1.1/svn-book.html – SRO

0

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

Если вы используете черепаху на сервере Выполните начальную проверку на InetPub/директории сайта, а затем на свитках вам просто нужно обновить каталог с помощью tortoise-> обновить

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

2

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

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

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

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

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

0

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

У вас действительно есть немало вещей, чтобы выяснить, хотите ли вы успешно внедрить подрывную деятельность.

Одна действительно хорошая статья о настройке подрывного на окнах - http://www.codinghorror.com/blog/archives/001093.html

Смежные вопросы