Я отправился в CruiseControl.NET, успешно создав свое решение. Перед тем, как он будет создан, он увеличивает номер версии в общей сборке «assemblyinfo.cs» - я написал для этого специальную командную строку.GIT - Получить CruiseControl NET для Push to Origin
Моего проект настроен следующим образом:
<sourcecontrol type="git">
<repository>[email protected]:repo.git</repository>
<branch>develop</branch>
<autoGetSource>true</autoGetSource>
<fetchSubmodules>true</fetchSubmodules>
<tagOnSuccess>true</tagOnSuccess>
<commitBuildModifications>true</commitBuildModifications>
<commitUntrackedFiles>false</commitUntrackedFiles>
<tagCommitMessage>Auto Build {0}</tagCommitMessage>
<tagNameFormat>Auto-Build-{0}</tagNameFormat>
<committerName>Build Server</committerName>
<committerEMail>[email protected]</committerEMail>
<workingDirectory>C:\Scratch\repo</workingDirectory>
<timeout units="hours">2</timeout>
</sourcecontrol>
<tasks>
<exec>
<!-- Custom version incrementor -->
<executable>C:\Program Files (x86)\CruiseControl.NET\VersionIncrementor.exe</executable>
<buildArgs>C:\Scratch\repo\SharedAssemblyInfo.cs</buildArgs>
<description>Increment Version</description>
</exec>
<devenv>
<solutionfile>C:\Scratch\repo\test.sln</solutionfile>
<configuration>Debug</configuration>
<executable>C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE\devenv.com</executable>
</devenv>
</tasks>
<publishers>
<xmllogger />
<artifactcleanup cleanUpMethod="KeepLastXBuilds"
cleanUpValue="10" />
</publishers>
До сих пор он совершает измененную версию локально, но как я могу заставить его толкать, что совершить происхождение?
UPDATE
Мои изменения становятся совершенно, они просто не получают толкнули. Когда я открываю репо на строительной машине в SourceTree, вижу, что он «отсоединен от origin/develop», я также вижу, что версия увеличивается, а фиксация становится помеченной, но фиксация не находится в моей ветке.
У меня есть commitBuildModifications и tagOnSuccess истинные, и это выглядит как приращение версии становится совершено и отмеченных на месте, но его просто не получить толкнул .. Я приложил скриншот исходного дерева, чтобы помочь объяснить мою проблему ... – Zeus82
@ Jeeve Посмотрите на источник: https://github.com/ccnet/CruiseControl.NET/blob/master/project/core/sourcecontrol /Git.cs#L366 .. есть толчок. Может быть, его недостающие сохраненные учетные данные? Я использую push over ssh с общим ключом. – dna