所以我用visual studio winforms构建了一个AwesomeApplication.exe, 它有一个包含发布版本的公共存储库。
我想在应用程序中添加更新检查程序(通知用户可以下载新版本)。
我可以使用github api获取最新的发布信息: https://developer.github.com/v3/repos/releases/#get-the-latest-release
但应用程序并不“知道”它是哪个github发布标签或版本, 除非我在应用程序设置中手动输入(在构建之前)?然后使用api,将该硬编码版本字符串与github release标记进行比较。这是可能的,但需要一点太多的手工工作..想知道还有其他选择吗?
我的发布流程是:
@VonC链接的解决方案,修改版本:
小更新: 实际上,通过上面的检查,字符串将始终不同,因为在编译时,当前的最新版本是1.10,而在编译和添加新版本之后,它已经是1.11(并且编译时字符串是旧的1.10)。 所以临时修复就是浮点或int解析你的版本标签号, 例如,比较它是否大于0.1或1,然后显示更新可用。
答案 0 :(得分:1)
您可以在exe中嵌入当前版本:请参阅“Embed git commit hash in a .Net dll”。
这样,您的应用程序可以将其内部版本(基于git describe --long
,其中包括最接近的标记)与最新版本的版本(基于标记)进行比较