KoshakLoL 14 Опубликовано: 20 марта, 2021 (изменено) Недавно возникла проблема с тем, что понадобилось быстро загружать репозитории с несколькими файлами + я хотел поиграться с реквестами. Решение воспроизвелось в виде Ziphyr (или зефира) - работающий на апи гитхаба (сори юзеры гитлаба) аналог git. Утилита нужна для обновления и скачивания целого репозитория, так как для остального уже существуют OPPM или wget сырых файлов с гитхаба. При клоне рекурсивная функция проверяет весь репозиторий и скачивает по очереди файлы, сохраняя их хэши. А при нужде пулла прога сверяет хэши и загружает последние версии файла. Работает с пробелами, так что люди, ставящие пробелы в названии .app тоже не помеха. # Текущие функции 1. Клонирование репозиториев по веткам/тегам/коммитам 2. Пулл репозиториев # Будущие функции (расположены по возрастанию даты реализации) 1. Пуш репозиториев 2. Диффы между версиями файла 3. Мультитрединг 4. Поддержка гитлаба # Установка: pastebin run 1BNSnN2X В бандле идет скрипт env, который упрощает создание переменных среды, а также библиотеки json и sha1 # Использование: ziphyr clone KoshakLoL/Ziphyr - клон репозитория в [ТЕКУЩАЯ_ПАПКА]/[НАЗВАНИЕ_РЕПОЗИТОРИЯ] ziphyr clone -d KoshakLoL/Ziphyr - клон реопозитория в [ТЕКУЩАЯ_ПАПКА] ziphyr clone --dir=[КАКАЯ-ТО ПАПКА] KoshakLoL/Ziphyr - клон реопозитория в [КАКАЯ-ТО ПАПКА] ziphyr clone --ver=[ТЭГ/РЕЛИЗ/КОММИТ] KoshakLoL/Ziphyr - клон репозитория в [ТЕКУЩАЯ_ПАПКА]/[НАЗВАНИЕ_РЕПОЗИТОРИЯ] с какой-либо версией ziphyr pull [КАКАЯ-ТО ПАПКА] - для пулла репозитория, содержащегося в [КАКАЯ-ТО ПАПКА] Все остальное (включая лицензию) можно найти на соответствующем репозитории (программа находится в еще очень ранней версии, с говнокодером в размере одного человека, так что... не судите строго) (за частичную реализацию директорий спасибо MrAbad) Изменено 21 марта, 2021 пользователем KoshakLoL Новые функции 7 2 1 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
AtomicScience 76 Опубликовано: 21 марта, 2021 Хорошая вещь, попробую попользовать. Спасибо! Но очень бы хотелось иметь возможность не только загружать последние версии файлов, но и загружать файлы последней метки релиза 1 1 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
KoshakLoL Автор темы 14 Опубликовано: 21 марта, 2021 (изменено) Новое обновление, если что. С помощью перехода на Tree API гитхаба теперь можно брать релизы, тэги и коммиты программ. (вроде как, если найдете баги, то пожалуйста - в иесусы репа) Также при пулле теперь необязательно указывать имя репозитория, ибо оно сохраняется после клона. В процессе пуши, так что... Ждем Скрытый текст Изменено 21 марта, 2021 пользователем KoshakLoL корректим 5 1 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах