我正在使用 MS Visual Studio 2008 在 C++ 中做一些开发工作,目前我们有一个版本函数,它返回一个表示版本号的硬编码字符串。我想找出一种方法,而不是硬编码数字,它可以从 1 开始,每次我进行调试或发布构建时递增 1(或者更好的是,跟踪调试版本和发布版本号)。或者,如果这不可能,请使用当前日期/时间作为版本号。
请注意,因为会有几个人在项目上工作并使用 SVN,所以代码必须与计算机无关(这意味着如果我当前使用的是 100 版本,我同事的上一个版本是 90 版本,那么下一个时间(我 checkin 代码,同事拉出代码后),他下次编译的版本号应该是101,而不是91。)
你能帮忙吗?
最佳答案
如果您使用的是 TortoiseSVN,则可以使用 subwcrev.exe在预构建事件中将当前修订号写入源文件。
因此, checkin 文件 version.template.hpp
并添加类似的内容
const string version = "13.12.0.$WCREV$";
添加项目预构建事件
subwcrev.exe "$(SolutionDir)." "$(ProjectDir)version.template.hpp"
"$(ProjectDir)version.hpp"
并包含生成的文件#include "version.hpp"
。
关于c++ - 使用 Visual Studio 2008 和 SVN 在 C++ 中进行自动版本控制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20885981/