所以我用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,然后显示更新可用。
您可以在exe中嵌入当前版本:请参阅“Embed git commit hash in a .Net dll”。
这样,您的应用程序可以将其内部版本(基于git describe --long
,其中包括最接近的标记)与最新版本的版本(基于标记)进行比较