我们的团队刚刚开始使用Nuget包,目前在本地服务器目录上。当几个开发人员在同一个项目上工作时,他们都意外地将他们的补丁构建升级到了相同的版本,并且在发布它时,他们相互覆盖,问题就开始了。安全使用本地nuget包的最好方法是什么?
发布于 2021-01-29 05:44:12
如果你正在使用git,你可以使用Nerdbank GitVersioning。
它使用您的git历史记录来计算每次提交的唯一版本号,因此来自两个不同提交的构建将始终具有不同的版本号。
发布于 2021-01-29 17:26:46
我不知道是否有任何第三方工具可以实现它。从nuget包的角度来看,您可以为PackageVersion
创建一个新的可区分的guid。让每个nuget包对每个人来说都是唯一的。如果你的nuget项目是新的sdk格式,你可以尝试这些:
<PropertyGroup>
<PackageId>Test</PackageId>
<Version>1.0.0</Version>
<!--let your staff add their first name here-->
<Employee_Name>perry</Employee_Name>
<!--show the time of the pack project-->
<Release_Time>$([System.DateTime]::Now.ToString('yyyyMMddHHmm'))</Release_Time>
<PackageVersion Condition="'$(PackageVersion)'==''">$(Version)</PackageVersion>
<PackageVersion Condition="'$(Employee_Name)' != ''">$(PackageVersion)-$(Employee_Name)</PackageVersion>
<PackageVersion Condition="'$(Release_Time)' !=''">$(PackageVersion)-$(Release_Time)</PackageVersion>
</PropertyGroup>
备注:Employee_Name
设置为每个员工的姓名,Release_Time
默认设置为打包时间。
和它是唯一的标识id,不能被彼此覆盖。
https://stackoverflow.com/questions/65945371
复制相似问题