Мы рассматриваем точно такой же сценарий развертывания, в котором мы хотим использовать Mercurial для развертывания наших веб-сайтов.
Текущий процесс, который мы пытаемся реализовать, будет выглядеть примерно так:
У нас будет несколько репозиториев Mercurial.Dev, Staging и Live.
Dev и Staging содержат полный исходный код веб-приложения.Они размещены внутри компании, и мы используем Teamcity для их развертывания на наших серверах разработки и промежуточного хранения с помощью простого простого развертывания Robocopy.
Однако мы не хотим развертывать весь некомпилированный исходный код в оперативном режиме.сервера.Таким образом, репозиторий Live содержит только полностью собранные dll (в каталоге bin веб-сайта) и сам веб-сайт.
Мы будем использовать автоматическую сборку Teamcity, чтобы обновить нашу живую версию сайта и передать ее вОперативное репо.
Тогда в качестве ручного шага можно будет войти на действующий сервер и извлечь последнюю версию из живого репо.На этом этапе мы можем либо развернуть прямое и запретить обслуживание папки .hg, либо выполнить развертывание xcopy / robocopy.
Я сейчас нахожусь в процессе подключения всего этого, так что это просто доказательствоконцепция и рад получить комментарии!
Тим