- PVSM.RU - https://www.pvsm.ru -
Думаю, многие программисты в тот или иной момент сталкивались с тем, что нужно как-то решить проблему с доставкой обновлений своего ПО до пользователей.
Способов ее решения множество, я хочу предложить еще один, который мне показался интересным. Он не претендует на звание идеального, но имеет право жить.
Всем программистам я думаю известно, что такое GIT [1](распределённая система управления версиями), данный способ публикации приложения основан на данной системе.
Но при использовании GIT под Windows есть некоторые проблемы, например все найденные мною клиенты GIT, даже в Portable (без установки) версии:
• Занимают много памяти на диске, много требуется скачивать (от 15 до 450 МБ)
• Содержат множество папок и файлов, неудобно их все переносить вместе со своим приложением
Решением данных проблем я и занялся. Что из этого вышло:
• Клиент для GIT, который имеет 2 функции (Clone и Pull) на основе LibGit2Sharp [2]
• Вес клиента 1,5 Мб в архиве и 3 Мб на диске
• Запуск из командной строки
• Всего 5 файлов, которые при желании можно объединить в 1. (1 исполняемый и 4 dll библиотеки)
Процесс публикации в GIT обычно состоит из нескольких простых этапов:
Первые 4 шага производятся 1 раз и занимают обычно пару минут [3].
Последний шаг производится каждый раз, когда требуется опубликовать новую версию приложения.
Какие преимущества это дает:
Как это работает?
Достаточно создать Bat файл или ярлык на приложение с параметрами, в которых указать URL репозитория и название папки в которую приложение будет загружено. gitnano [urlgit] [dirname]
Например
gitnano.exe github.com/vpuhoff/GitNanoCompiled [4] GitNano
Приложение:
Естественно все изменения в старой папке сотрутся, что отлично подходит для задачи обновления приложений.
Исходники [5]и ссылка на приложение [4]размещены в GITHUB [6]и доступны все желающим. Предложения по доработке приветствуются.
Надеюсь эта статья поможет тем, кто ищет простой и удобный способ обновлять свое приложение из сети.
Автор: vpuhoff
Источник [7]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/c-2/189174
Ссылки в тексте:
[1] GIT : https://ru.wikipedia.org/wiki/Git
[2] LibGit2Sharp: https://github.com/libgit2/libgit2sharp
[3] пару минут: https://habrahabr.ru/post/125799/
[4] github.com/vpuhoff/GitNanoCompiled: https://github.com/vpuhoff/GitNanoCompiled/
[5] Исходники : http://neurowareblog.blogspot.com/2016/09/git-c.html
[6] GITHUB : https://github.com/vpuhoff/GitRepoAutoUpdater/
[7] Источник: https://habrahabr.ru/post/310290/?utm_source=habrahabr&utm_medium=rss&utm_campaign=best
Нажмите здесь для печати.