gpt4 book ai didi

c# - 颠覆以更新文本文件中的版本

转载 作者:塔克拉玛干 更新时间:2023-11-03 07:49:27 27 4
gpt4 key购买 nike

我在这里陷入了一个圆形陷阱......我们在专用服务器上构建,所以当我们进行拉取和构建时,我想更新项目中的版本信息以显示一个版本,使得最后一位数字是当前 pull for subversion 的“修订”号。

但是如果脚本更新了那个文件,那么它就不是最新的了。所以我需要重新提交那个文件,或者在下一次拉取时合并它,或者......?然后修订号递增。

我在 C++ 程序中解决了这个问题,方法是将实际修订号放在一个不受 SVN 控制的文件中。现在脚本可以“svn update”,捕获修订号,更改本地文件,并构建。然而,这会创建对不受 SVN 控制的文件的依赖。

此外,有些项目似乎无法将版本号外化到专用文件中,并使该文件不受 SVN 控制。

我真正希望看到的是 SVN 在 svn 提交(或 svn 更新)时更新的“eyecatcher”标签。任意的东西,比如:{!SVN_REV}所以,我的 C# 程序集文件可能如下所示:

[assembly: AssemblyFileVersion("1.1.0.{!SVN_REV}")]

其他版本控制系统支持这种能力。在 Subversion 中有没有办法做到这一点?

感谢您的任何建议。斯科蒂

最佳答案

if the script updates that file, then it is not current

不,它是当前的(它是信息条款),您可以不在存储库中保存这个微小的更改(最好和最简单的方法)

从另一边,你可以

  • 将模板文件存储在存储库中(阅读 SubWCRev 及其关键字)
  • 在构建阶段,在第一阶段使用关键字创建额外的非版本文件,用真实(实际数据)替换并使用这个文件,而不是模板

关于c# - 颠覆以更新文本文件中的版本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31749927/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com