автоматическое обновление приложения с помощью git - PullRequest
1 голос
/ 23 сентября 2011

есть ли способ использовать git в качестве механизма автоматического обновления приложений.что-то вроде того, что делает Google Chrome (или Github для Mac).

Я хочу создать центральное git-репо, содержащее все приложение (включая двоичные файлы), и иметь возможность заставить приложение получать изменения из репофон.Новая версия должна быть установлена ​​при следующем запуске.

Спасибо

Ответы [ 5 ]

4 голосов
/ 12 ноября 2012

Я создал Java-программу, которая использует Git в качестве автообновления.Программа делает то, что она проверяет необработанный текст CurrentVersion.txt.Если номер больше, чем версия программы, он загружает программу обновления из git-репо.Затем программа обновления выступает в качестве посредника между версиями, удаляя старую версию и заменяя ее новой загруженной.Это было довольно просто.

0 голосов
/ 27 июля 2015

Если вы работаете на Windows, вы можете использовать мое графическое решение

Или создайте пакетный файл DOS так, как я это сделал Вот мое решение :

    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 ..
0 голосов
/ 23 сентября 2011

Это может показаться хорошей идеей, поскольку git довольно эффективно хранит файлы delta, но после этого нет: вам придется встраивать git в ваше приложение. Не уверен, что это желательно.

Лучше взгляните на кабачок , механизм автообновления Chrome (только для Windows AFIK) и ответы с наибольшим количеством голосов на тег

0 голосов
/ 23 сентября 2011

вы всегда можете сделать обходной путь, например, текстовый файл на сервере, который будет хранить последнюю версию. При запуске программного обеспечения загрузите этот файл, убедитесь, что версия файла отличается от версии установленного программного обеспечения, и загрузите установщик новой версии и запустите его.

довольно просто реализовать ...

0 голосов
/ 23 сентября 2011

Разве вы не даете ответ на свой вопрос?Git тянуть при запуске вашего приложения.После git pull вы можете запустить несколько сценариев для выполнения действий, специфичных для обновления.

Если у вас есть веб-приложение, я бы не делал этого при каждом запросе вашего приложения, но в задании cron, которое запускаетсяN минут.

...