Предыдущие версии ASP.NET позволили вам автоматически увеличивать номер версии через Project Properties. Как это сделать в MVC 6?
Как я могу автоматически увеличивать номер версии MVC 6?
Ответ 1
MVC 6 теперь использует project.json
для отслеживания версии, и вы можете использовать этот номер, используя gulp-bump.
Версия Bumping
-
Добавить gulp -bump в package.json >
devDependencies
gulp-bump": "1.0.0"
-
Изменить gulpfile.js
- Добавьте
bump = require("gulp-bump")
к зависимостям в верхней части -
Добавьте задачу, чтобы увеличить номер версии
gulp.task("bump", function() { gulp.src("./project.json") .pipe(bump()) .pipe(gulp.dest("./")); });
- Добавьте
-
Обновить project.json
- По умолчанию шаблон MVC устанавливает номер версии
1.0.0-*
, измените ее на1.0.0
. - Добавьте
"gulp bump"
в конец"scripts"
>"prepublish"
- По умолчанию шаблон MVC устанавливает номер версии
Теперь, когда вы публикуете или dnu publish
или запускаете бегун для задач gulp, номер версии будет выдаваться.
Bonus
Чтобы отобразить этот номер версии в представлении, добавьте в представление следующее:
@inject Microsoft.Extensions.PlatformAbstractions.IApplicationEnvironment appEnv
My version number is @(appEnv.ApplicationVersion)
Ответ 2
Ответ ASP.NET 5 (DNX)
Это то, что команда ASP.NET 5 фактически использует сами. Если вы используете сервер сборки непрерывной интеграции, вы можете заставить сервер сборки установить переменную среды DNX_BUILD_VERSION
, как это, используя PowerShell:
$env:DNX_BUILD_VERSION=$version
Затем ваша машина сборки устанавливает $version в 'build123' или что-то подобное (она не может начинаться с числа, должна быть символом из алфавита). Затем, пока ваш номер версии установлен следующим образом:
{
"version": "1.0.0-*"
}
Звезда будет заменена значением в переменной окружения DNX_BUILD_VERSION. См. Страницу ASP.NET 5 GitHub здесь для получения дополнительной информации.
Ответ 3
Для проектов .NET Core (RTM) вы можете использовать dotnet-bump. Вы можете добавить его в качестве инструмента в свой проект и вызвать его из postcompile script. http://github.com/BalassaMarton/dotnet-bump