Версия сборки по сравнению с числом Пересмотра

У меня есть приложение asp.net/C#, которое использует подверсию для управления исходным кодом.

Мое приложение автоматически увеличивается, это - AssembleVersion и AssemblyFileVersion на каждой сборке, которая работает как очарование и отображает номер сборки в стороне администрирования сайта.

Мы отслеживаем AssembleVersion и AssemblyFileVersion, когда мы делаем развертывание, однако, когда проблема возникает, и мы должны откатывать к определенной версии, мы понятия не имеем который пересмотр предназначаться в подверсии.

У меня есть немного идей:

  1. Сохраните AssembleVersion как комментарий в каждом файле
  2. Имейте ключевое слово в комментариях фиксации, которые добираются, заменил AssembleVersion на каждой фиксации (все еще должен выяснить, как сделать это),

Любая справка и предложения будут цениться

Обновленный: опция "1" является на самом деле глупой идеей, вызовите, это будет означать, что каждый раз я создаю, все файлы будут отмечены, как обновлено и когда я буду фиксировать, каждый файл будет обновлен

7
задан stoic 28 July 2010 в 11:03
поделиться

7 ответов

Когда я строю, я везде указываю этот номер сборки.

  • Я поместил его в тег в svn.
  • Я помещаю его в метаданные сборки каждой сборки, которую я создаю.
  • Я добавляю его в конец имени файла в моих установщиках.
  • Я помещаю его в нижний колонтитул каждой развернутой веб-страницы.
  • Я помещаю его в нижний колонтитул своих отчетов.
  • Я помещаю его на заставку своих клиентских приложений.
  • Я вставил его в экран приветствия для моих установщиков.

Единственное, что я не наливаю, так это кофе, который я беру черный .

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

4
ответ дан 6 December 2019 в 09:57
поделиться

Примените тег к исходному дереву после обновления AssemblyVersion и AssemblyFileVersion .

2
ответ дан 6 December 2019 в 09:57
поделиться

Вы можете выполнить «ветку для выпуска». Перед созданием сборки выпуска вы можете разветвить магистраль, а затем создать тег в новой ветке с номером версии выпуска.

              + release tag
             /
            +--------------------- release branch
           /  
----------+----------------------------------------------------- trunk

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

              +                 + patch release tag
             /                 /
            +-----------------+-+---- release branch
           /                    | merged fix into trunk...
----------+----------------------------------------------------- trunk
2
ответ дан 6 December 2019 в 09:57
поделиться

Как насчет использования тегов.

http://svnbook.red-bean.com/en/1.1/ch04s06.html

4
ответ дан 6 December 2019 в 09:57
поделиться

В данном случае рекомендуется использовать теги / ветки.

Вы также можете (или дополнительно) включить номер версии svn в свой AssemblyInfo. Один из подходов - использовать задачу AssemblyInfo из проекта msbuildtasks по адресу http://msbuildtasks.tigris.org

Для получения дополнительной информации, google msbuild svn revision assemblyinfo

Вы могли бы ], то обойтись без тегов / веток, так как вы всегда можете проверить конкретную ревизию и / или создать ветку из определенной ревизии.

2
ответ дан 6 December 2019 в 09:57
поделиться

Теги бесполезны, если вы часто строите. Может быть, найти способ обновить версию сборки на основе ревизии svn? Также укажите название ветки, потому что они имеют общие версии.

И вы должны иметь возможность извлекать версию сборки на своих страницах ASP.NET и программно печатать ее в нижнем колонтитуле или что-то в этом роде.

3
ответ дан 6 December 2019 в 09:57
поделиться

Вы можете пометить Строка Subversion с AssembleVersion или AssemblyFileVersion, в зависимости от того, что имеет наибольший смысл.

Вы также можете отслеживать номер версии Subversion точно так же, как вы в настоящее время отслеживаете AssembleVersion и AssemblyFileVersion при развертывании.

2
ответ дан 6 December 2019 в 09:57
поделиться
Другие вопросы по тегам:

Похожие вопросы: