有没有办法使用git作为应用程序的自动更新机制。类似谷歌Chrome的东西(或Github for Mac)。
我想创建一个包含整个应用程序(包括二进制文件)的中央git仓库,并能够让应用程序从后台的repo中获取更改。新版本应在下次启动时安装。
由于
答案 0 :(得分:4)
我制作了一个使用Git作为autoupdater的java程序。该程序的作用是检查CurrentVersion.txt
的原始文本。如果该数字大于程序版本,则从git repo下载更新程序。然后,更新程序充当版本之间的媒介并删除旧版本并将其替换为新下载的版本。这很简单。
答案 1 :(得分:0)
你不是在回答你自己的问题吗? Git启动你的应用程序。在git pull之后,您可以运行一些脚本来执行特定于更新的操作。
如果您有一个Web应用程序,我不会对您的应用程序的每个请求执行此操作,而是在每N分钟运行一次的cron作业中执行此操作。
答案 2 :(得分:0)
这可能看起来是个好主意,因为git在存储文件增量方面非常有效,但在它不存在之后:你必须在你的应用程序中嵌入git。不确定它是否可取。
最好看看courgette,Chrome的自动更新机制(仅适用于Windows AFIK),以及auto-update代码投票最多的答案
答案 3 :(得分:0)
如果您使用的是Windows计算机,则可以使用我的graphic solution
或者像我一样创建DOS批处理文件 这是我的solution:
rem first install GIT Bash
rem then add C:\Program Files\Git\bin to the environment variable PATH and reboot you PC
set VisualStudioVersion=2012
set VisualStudioName=Visual Studio %VisualStudioVersion%
cd \
cd %userprofile%
cd "Documents"
cd %VisualStudioName%
cd "Projects"
echo Press a key to update all choosen git repositories if you're in the correct directory otherwise press CTRL-C to cancel
pause
cd AddFeatures
git pull origin master
cd ..
cd CodeGeneration
git pull origin master
cd ..
答案 4 :(得分:-1)
您始终可以像服务器中的文本文件一样制作解决方法,以存储最新版本。在软件启动时,请下载此文件,验证文件版本是否与已安装软件的版本不同,然后下载新版本安装程序并运行它。
实施起来非常简单......