Карфаген: Как получить самую последнюю версию данного репозитория?
Документация Cartfile делает следующее утверждение:
Если не задано требование к версии, разрешена любая версия зависимости.
с противоречивым примером:
# Use the latest version
github "jspahrsummers/xcconfigs"
Кроме того, это не указано, но из тестирования я делаю вывод, что "последняя" на самом деле является версией последнего тега. Правильно ли это толкование? И если да, то как определить самую последнюю фиксацию - нужно ли вручную проверять и указывать последнюю фиксацию, или есть более простой способ?
Ответы
Ответ 1
documentation утверждает
Carthage поддерживает несколько видов требований к версии:
- >= 1.0 для "по крайней мере версии 1.0"
- ~ > 1.0 для "совместимости с версией 1.0"
- == 1.0 для "точно версии 1.0"
- "some-branch-or-tag-or-commit" для определенного объекта Git (все, что разрешено Git rev-parse)
поэтому я верю
github "jspahrsummers/xcconfigs" "HEAD"
должен работать так, как ожидалось, поскольку "HEAD" является допустимым аргументом для git rev-parse
В качестве альтернативы
github "jspahrsummers/xcconfigs" "master"
или любой другой ветки
Ответ 2
Просто github "jakecraige/RGB"
будет кричать No tagged versions found for github "jakecraige/RGB"
Лучше использовать github "jakecraige/RGB" "master"
Вы можете прочитать Учебник по Карфагену: Начало работы
имя ветки/имя тега/имя фиксации означает "Использовать эту специальную ветвь/тег/фиксацию git". Например, вы можете указать master, или commit имеет как 5c8a74a.
Ответ 3
Об этом ответил mdiep на странице Carthage github:
Последняя версия относится к тому, что имеет фактическую версию - релиз или тег. Если вам нужна самая последняя фиксация, вам нужно указать ветку, на которую вы хотите установить.
Ответ 4
Просто оставьте номер версии. Шахта выглядит так: она работает:
github "Alamofire/Alamofire"
github "auth0/JWTDecode.swift"