Ошибка "Пересекает ветви" с Mercurial и CruiseControl.Net - PullRequest
1 голос
/ 05 февраля 2011

Мы переходим на Mercurial, и, конечно, нам нужно обновить процесс сборки CruiseControl.Net, чтобы использовать его вместо Visual SourceSafe.

Мы обновили наш конфигурационный файл CruiseControl следующим блоком:

<sourcecontrol type="hg" autoGetSource="true">
  <executable>C:\Program Files\Mercurial\hg.exe</executable>
  <repo>https://bitbucket.org/GTSDevs/galaxy</repo>
  <workingDirectory>C:\Cruise Control\Releases\5.0.0\source</workingDirectory>
  <branch>master</branch>
  <multipleHeadsFail>false</multipleHeadsFail>
  <tagOnSuccess>true</tagOnSuccess>
  <timeout units="minutes">20</timeout>
</sourcecontrol>

Это работало хорошо, пока мы не поместили некоторый код в наш репозиторий с веткой в ​​нем. Теперь наша сборка завершается с ошибкой:

ThoughtWorks.CruiseControl.Core.CruiseControlException: Source control operation failed: abort: crosses branches (merge branches or use --clean to discard changes)
. Process command: C:\Program Files\TortoiseHg\hg.exe update -r master --noninteractive
   at ThoughtWorks.CruiseControl.Core.Sourcecontrol.ProcessSourceControl.Execute(ProcessInfo processInfo)
   at ThoughtWorks.CruiseControl.Core.Sourcecontrol.Mercurial.Mercurial.GetSource(IIntegrationResult result)
   at ThoughtWorks.CruiseControl.Core.IntegrationRunner.Build(IIntegrationResult result)
   at ThoughtWorks.CruiseControl.Core.IntegrationRunner.Integrate(IntegrationRequest request)

Вся информация об ошибке, которую я могу найти, относится к выполнению update.

Может кто-нибудь помочь с этим справиться?

Что еще нужно сделать в нашем файле ccnet.config для поддержки Mercurial?

1 Ответ

1 голос
/ 07 февраля 2011

Некоторые идеи:

...