标签: versioning

处理汇编版本的正确方法是什么?

我期待为即将开展的项目实施每日构建.

但在此之前,我需要知道如何正确版本的程序集.

我有以下问题:

  • 每个程序集是否应该具有独立的版本号,还是它们都应该共享相同的版本?
  • 我应该使用*版本进行构建和修订吗?
  • 修订是否与日常构建相关?

versioning project-management visual-studio

7
推荐指数
1
解决办法
798
查看次数

为什么我的内联asp.net无法在<link href>中工作?

我想在我的js文件中添加一个版本号.

<link href="css/reset.min.css?v=<%= App.Golbal.VERSION %>" media="all" rel="Stylesheet" type="text/css" />
Run Code Online (Sandbox Code Playgroud)

这呈现为

<link href="css/reset.min.css?v=&lt;%= App.Golbal.VERSION %>" media="all" rel="Stylesheet" type="text/css" />
Run Code Online (Sandbox Code Playgroud)

[标准asp.net 4 web applciation]

有人可以帮忙吗?

versioning asp.net web-applications

7
推荐指数
2
解决办法
3944
查看次数

做一个Git pull来覆盖本地更改

肯定有这方面的帖子,但我实际上做了一个提交,因为我认为这是正确的做法.

所以,我有两个存储库,一个开发和一个生产.我不得不在生产中编辑一些东西,因为它是一个紧急的bug修复,现在我有三个文件在生产中比在开发中更新.

我在生产中提交了三个文件并尝试了拉,但它告诉我有合并错误.我尝试将新文件复制并粘贴到开发服务器并重试整个过程并且无法正常工作.现在我确定我需要的是开发(因为我复制并粘贴到它中)并且已经提交,所以我怎样才能拉出并覆盖冲突的文件?


----跟随@Seths回复

好吧,我想我确实需要改写我的问题:)我有三个存储库.一个开发,一个在GitHub和一个生产.通常为了更新生产,我只是从开发到GitHub git pull origin master(从GitHub到生产),它起作用.

不幸的是,我在没有藏匿的情况下更改了生产文件.尝试拉动时如何强制覆盖而不是合并?

versioning git pull commit git-pull

7
推荐指数
1
解决办法
2万
查看次数

当使用semver(语义版本控制)时,如果更改Y,补丁版本Z(xyZ)应该返回0吗?

语义版本控制:

如果仅引入向后兼容的错误修复,则补丁版本Z(xyZ | x> 0)必须递增.错误修复被定义为修复错误行为的内部更改.

假设我有一个版本0.1.12的程序.如果我必须增加Y(0.Y.12),我应该将Z(0.2.Z)返回到0(变为0.2.0)还是保持不变(变为0.2.12)?

versioning version

7
推荐指数
1
解决办法
661
查看次数

Maven分支更新项目版本自动化发布工作流程

关于Maven自动化项目版本控制,我有一个难以解决的案例,我希望我会根据您的经验和建议找到合适的解决方案.

问题是这样的:我们有一个巨大的mavenized java产品,它包含~200个非常相互依赖的不同项目.我们同意每个项目都应该独立开发,以便每个项目都有自己的生命周期.在开发阶段一切正常,没有问题.当我们为这些项目准备发布时,问题就出现了:因为手动更改的项目非常多,所以我们决定找到一个自动解决方案来解决发布过程.

先决条件是这些:我们都同意SVN视角的发布策略应该是这样的: - 所有开发都应该在SVN中继上执行,应该在分支上创建和维护发布.每个执行的版本都应自动创建一个标记.

来自MAVEN视角的策略是这样的: - 在发布项目之前,我们首先将主干复制到分支,以便控制对分支代码的项目维护.我们选择的版本控制系统是:Major.Minor.BuildNumber-SNAPSHOT(例如1.0.0-SNAPSHOT).分支代码时,我们希望通过递增MinorVersion来更改项目版本号(例如,trunk-1.0.0-SNAPSHOT将变为1.1.0-SNAPSHOT,并且将在新创建的分支上复制和发布1.0.0-SNAPSHOT ) - 当我们决定项目足够成熟以便发布时,我们通过使用maven-release-plugin(mvn release:clean release:prepare release:perform)发布它,以便我们的项目版本将从Major转换. Minor.BuildVersion-SNAPSHOT(例如1.0.0-SNAPSHOT)Major.Minor.BuildVersion(例如1.0.0),然后将为下一个开发迭代做好准备,如:Major.Minor.BuildVersion + 1-SNAPSHOT(例如1.0. 1-SNAPSHOT)

我们面临的问题与项目版本控制有关.因此,在主干的开发阶段,所有项目都使用其依赖项的最新SNAPSHOT版本(mvn版本:use-latest-versions -DallowSnapshots = true -DupdateDependencies = true),但是当我们考虑是时候启动发布程序并准备分支代码,出现问题:我们开始分支

  1. 父POM

    (mvn -B release:clean release:branch -DbranchName = $ {project.artifactId} _ $ {project.version} -Dusername = $ {username} -Dpassword = $ {passwd} -Dproject.rel.$ {groupId}: $ {projectId} = 1.0.0-SNAPSHOT -Dproject.dev.$ {groupId}:$ {projectId} = 1.1.0-SNAPSHOT)

    • 将项目从主干复制到新创建的分支,将主机上的pom版本从1.0.0-SNAPSHOT转换为1.1.0-SNAPSHOT …

versioning automation branch maven

7
推荐指数
1
解决办法
2227
查看次数

MvcContrib.MVC3-ci和Mvc.Contrib NuGet包之间有什么区别?

MvcContrib.MVC3-ci和Mvc.Contrib NuGet包之间有什么区别?

我看到他们有不同的依赖关系-ci有更多的下载.我假设我想要-ci用于我的MVC3项目,但我该如何理解呢?-ci是什么意思?

versioning asp.net-mvc nuget-package asp.net-mvc-3

7
推荐指数
1
解决办法
1256
查看次数

LibGit2Sharp索引被锁定 - 错误

有时我会尝试同时读取和写入Git存储库.但后来当我尝试提交文件时,我收到以下错误消息:

libgit2引发了一个错误.Category = Index(LockedFile).索引已锁定.这可能是由于同意或崩溃的过程.

提交按预期完成,为什么我收到此错误消息?我怎么摆脱它?

(如果LibGit2Sharp开发人员看到这一点:错误消息中存在拼写错误:concuRRRent.):D

versioning git github libgit2 libgit2sharp

7
推荐指数
2
解决办法
7966
查看次数

使用nuget更新预发布依赖项

我目前正在开发一组逐步添加更多功能的库.

例如,在我的解决方案中,我有一个Foo项目,它定义了一些基本功能集,一个额外的项目Foo.Web,用于特定于Web的实现以及Foo.Web.Tokens更具体的功能.Foo.Web.Tokens取决于Foo.Web哪个取决于Foo.

我正在尝试构建单独的nuget项目,因此用户只需要引用他们需要的依赖项.我正在使用GitVersionTask对程序集进行版本控制,因此在构建之后,它们都获得相同的版本号,并且在从项目构建时我使用替换令牌作为nuget,以便nuget包都具有相同的版本号.

我的问题是,当我尝试引用一个预发布版本Foo.WebFoo.Web.Tokensnuget无法解决依赖Foo.例如,如果我1.1.0.0-alhpa0001为每个程序集发布了一个包,那么当我尝试更新时Foo.Web,nuget会显示以下错误:

Install-Package : Unable to resolve dependency 'Foo (? 1.1.0.0)'.

使用-Pre参数不会改变这一点.A Foo.1.1.0-alpha0001.nupkg确实存在,但我觉得nuget无法解决它,因为它不是一个稳定版本,我让nuget使用以下命令自动检测解决方案中的依赖关系:

.\.nuget\NuGet.exe pack source/Foo.Web/Foo.Web.csproj -Build -Version 1.1.0.0-alpha0001 -symbols -IncludeReferencedProjects

如何正确地允许Foo.Web预发行包引用Foo相同版本的预发布包?

versioning nuget

7
推荐指数
1
解决办法
461
查看次数

无法导出cmake PROJECT_VERSION_MAJOR,因为它等于零

我在将cmake PROJECT_VERSION_MAJOR变量导出到config.h文件时遇到问题.在我的主要内容CMakeLists.txt我通过调用project()CMakeLists.txt文件根据cmake文档设置此变量:

cmake_minimum_required(VERSION 3.2.2)
cmake_policy(SET CMP0048 NEW)

set(PROJECT "SampleName")

project(${PROJECT}
    VERSION "0.0.0")

configure_file(${CMAKE_SOURCE_DIR}/cmake/config.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config.h)
Run Code Online (Sandbox Code Playgroud)

通过configure_file()invokation我试图将一些cmake变量导出config.h到头文件.请看看我的config.h.cmake.file:

#ifndef CONFIG_H
#define CONFIG_H

#cmakedefine PROJECT "@PROJECT@"

#cmakedefine PROJECT_VERSION "@PROJECT_VERSION@"

#cmakedefine PROJECT_VERSION_MAJOR "@PROJECT_VERSION_MAJOR@"

#cmakedefine PROJECT_VERSION_MINOR "@PROJECT_VERSION_MINOR@"

#cmakedefine PROJECT_VERSION_PATCH "@PROJECT_VERSION_PATCH@"

#endif
Run Code Online (Sandbox Code Playgroud)

cmake ..在我的构建目录中运行命令后config.h创建,但它看起来像这样:

#ifndef CONFIG_H
#define CONFIG_H

#define PROJECT "SampleName"

#define PROJECT_VERSION "0.0.0"

/* #undef PROJECT_VERSION_MAJOR */

/* #undef PROJECT_VERSION_MINOR */

/* #undef PROJECT_VERSION_PATCH */

#endif
Run Code Online (Sandbox Code Playgroud)

我想这个行为的原因是在cmake文档中关于该configure_file() …

c++ versioning cmake

7
推荐指数
1
解决办法
2035
查看次数

Asp.Net 5语义版本控制

似乎版本控制的工作方式与之前版本的.Net不同.project.json似乎使用了语法版本(我在网上看到的),格式为Major.Minor.Patch-Special.

  1. 这是否取代了Assembly版本的想法或添加到它?或者只是与Nuget一起使用.
  2. 如何在运行时访问该版本.我在Microsoft.Framework.Runtime包中遇到了Nuget.SemanticVersion对象,但我无法找到如何在代码中检索它.
  3. 是否有一种编程方式来在构建或自定义脚本上更新此值?

c# versioning asp.net semantic-versioning dnx

7
推荐指数
1
解决办法
550
查看次数