от
Я использую CCNET на пример проекта с SVN как контролировать свой источник. CCNET настроен для создания сборки на каждый заезд. CCNET использует MSBuild для построения исходного кода. Я хотел бы использовать последний номер ревизии для создания
AssemblyInfo.cs
при компиляции. Как я могу получить последнюю версию из Subversion и использовать значение в CCNET? Редактировать: я не использую Нант - только в MSBuild.

Ваш ответ

Отображаемое имя (по желанию):
Конфиденциальность: Ваш электронный адрес будет использоваться только для отправки уведомлений.
Анти-спам проверка:
Чтобы избежать проверки в будущем, пожалуйста войдите или зарегистрируйтесь.

13 Ответы

0 голосов
от
Я использую CCNET на пример проекта с SVN как контролировать свой источник. CCNET настроен для создания сборки на каждый заезд. CCNET использует MSBuild для построения исходного кода. Я хотел бы использовать последний номер ревизии для создания
AssemblyInfo.cs
при компиляции. Как я могу получить последнюю версию из Subversion и использовать значение в CCNET? Редактировать: я не использую Нант - только в MSBuild.
0 голосов
от
CruiseControl.Net 1.4.4 теперь сборка Этикетировочные версия, которая генерирует номера версии, совместимые с .Чистый свойства сборки. В моем проекте у меня он настроен как:
0 голосов
от
У вас есть в основном два варианта. Либо написать простой скрипт, который запустит и парсить вывод svn.exe информация --ревизия получить номер ревизии (после генерации файле AssemblyInfo.CS-это в значительной степени прямо вперед) или просто использовать плагин для CCNET. Вот это: Пересмотр Этикетировочные СВН-это плагин для CruiseControl.Net, который позволяет создать CruiseControl метки для строит, основываясь на номер редакции вашего SVN рабочей копии. Это может быть разработан с префиксом и/или большие/малые номера версий. на HTTP://code.google.com/p/svnrevisionlabeller/ Я предпочитаю первый вариант, потому что это только примерно 20 строк кода:
using System;
using System.Diagnostics;

namespace SvnRevisionNumberParserSample
{
    class Program
    {
        static void Main()
        {
            Process p = Process.Start(new ProcessStartInfo()
                {
                    FileName = @"C:\Program Files\SlikSvn\bin\svn.exe", // path to your svn.exe
                    UseShellExecute = false,
                    RedirectStandardOutput = true,
                    Arguments = "info
0 голосов
от
У меня написано файл build Нанте, который обрабатывает разбора СВН информации и создания свойства. Затем я использую эти свойства для решения различных задач, включая установка метки на построение. Я использую этой цели в сочетании с Этикетировочные версия SVN, упомянутых Любош hasko с отличными результатами.
0 голосов
от
Я нашел этот проект на GitHub. Это плагин
CCNET
для создания метки в
CCNET
. В
DLL
протестирован с
CCNET 1.3
но он работает с
CCNET 1.4
для меня. Я успешно использую этот плагин на этикетке моей сборки. Теперь на его передачей
MSBuild
...
0 голосов
от
Если вы предпочитаете делать это на
MSBuild
стороны, за
CCNet
конфиг, похоже, задача
MSBuild
расширение задач сообщества
SvnVersion
может сделать трюк.
0 голосов
от
Я в настоящее время "вручную" делали это с помощью заранее собранной-exec для задач, используя мой инструмент cmdnetsvnrev, но если кто-то знает лучше ccnet-встроенный способ сделать это, я был бы рад услышать :-)
0 голосов
от
Настройка файлов csproj для автогенерации файле AssemblyInfo.в CS на HTTP://www.codeproject.com/KB/dotnet/Customizing_csproj_files.aspx Каждый раз мы создаем новый проект c#, В Visual Studio помещает там Файле AssemblyInfo.файл CS для нас. Файл определяет ассамблеи мета-данные, такие как свою версию, конфигурацию или продюсер. Нашел вышеуказанную технику для авто-ген отличается.CS с помощью MSBuild. Вскоре после образца.
0 голосов
от
Я не уверен, если это работа с CCNET или нет, но я создал плагин в SVN версии для сборки проекта инкремент версии на сайте CodePlex. Этот инструмент является довольно гибкой и может быть настроен на автоматическое создание версии для вас помощью версия SVN. Он не требует написания какого-либо кода или редактирования XML, так что ура! Я надеюсь, что это помогает!
0 голосов
от
Мой подход заключается в использовании вышеупомянутый плагин для ccnet и задач Нант Эхо, чтобы создать файл
VersionInfo.cs
содержащие ничего, кроме версии атрибутами. У меня есть только файл
VersionInfo.cs
в сборку Задача Эхо просто выводит строку я даю его в файл. Если есть похожие задачи MSBuild, вы можете использовать тот же подход. Вот небольшое задание Нанте я использую:
...