обновление модуля не получает самую последнюю версию модуля

Cocoapods и Xcode - последняя версия

У меня есть модуль, репо которого я связываю непосредственно в своем подфайле и указываю использовать версию 1.5.0 (которая была выпущена как версия на Github). Однако всякий раз, когда я запускаю установку и обновление модуля, Cocoapods продолжает получать версию 1.4.1 моего репозитория (предыдущий выпуск Github).

Вот соответствующая строка моего подфайла:

pod 'podName', :git=> 'git repo'

Я попытался удалить Podfile.lock и повторно загрузить модули, и я убедился, что самая новая версия модуля действительно помещена в Github.


person Kevin2566    schedule 01.10.2019    source источник
comment
Вы можете разместить фактическую строку, в которой указываете использовать 1.5.0? Вы тоже запускали pod repo update?   -  person Olympiloutre    schedule 01.10.2019
comment
пробовали ли вы запустить pod repo update для обновления до последних доступных модулей?   -  person valosip    schedule 01.10.2019
comment
Я никогда не указываю версию для использования, что, как я считаю, означает, что Cocoapods будет использовать самую последнюю версию модуля. Я пробовал pod repo update, который до сих пор сохраняет версию 1.4.1.   -  person Kevin2566    schedule 01.10.2019


Ответы (2)


Не зная, какой модуль и не видя вашего кода для использования точной версии, трудно сказать, что не так.

Но я бы побежал pod repo update, а потом запустил pod install

Это обновит ваши локальные модули до новейших доступных версий, а затем установит правильную версию модуля, если вы настроите ее правильно.

Документация Cocoapod по версиям:

Besides no version, or a specific one, it is also possible to use logical operators:

'> 0.1' Any version higher than 0.1
'>= 0.1' Version 0.1 and any higher version
'< 0.1' Any version lower than 0.1
'<= 0.1' Version 0.1 and any lower version
In addition to the logic operators CocoaPods has an optimistic operator ~>:

'~> 0.1.2' Version 0.1.2 and the versions up to 0.2, not including 0.2 and higher
'~> 0.1' Version 0.1 and the versions up to 1.0, not including 1.0 and higher
'~> 0' Version 0 and higher, this is basically the same as not having it.


To use the master branch of the repo:
pod 'Alamofire', :git => 'https://github.com/Alamofire/Alamofire.git'

To use a different branch of the repo:
pod 'Alamofire', :git => 'https://github.com/Alamofire/Alamofire.git', :branch => 'dev'

To use a tag of the repo:
pod 'Alamofire', :git => 'https://github.com/Alamofire/Alamofire.git', :tag => '3.1.1'

Or specify a commit:
pod 'Alamofire', :git => 'https://github.com/Alamofire/Alamofire.git', :commit => '0f506b1c45'
person valosip    schedule 01.10.2019
comment
Указание версии, например, pod 'podName', :git=> 'git repo', '1.5.0', дает мне syntax error, unexpected keyword_do_block, expecting keyword_end installer.pods_project.targets.each do |target| ошибку. Указание конкретной фиксации, в которую я включил эти новые изменения для версии 1.5.0, по-прежнему загружает версию 1.4.1. - person Kevin2566; 01.10.2019
comment
@ Kevin2566 Не могли бы вы рассказать, для какого кокопода это? Это частный или общественный коконод? - person valosip; 01.10.2019
comment
Это частный cocoapod (хорошо технически общедоступное репо, но я не хочу делиться им вместе со своей личностью), поэтому я не хочу публиковать фактический код. Однако код, который я опубликовал, точно такой же, как в моем подфиле, только с отредактированными именами модулей и репозиториев. - person Kevin2566; 01.10.2019
comment
@ Kevin2566 Хорошо, я понял, вы удостоверились, что сделали версию модуля доступной, установив тег и нажав репо? guides.cocoapods.org/making/using-pod-lib-create. html && medium.com/@ shahabejaz / У меня сильное подозрение, что шаг был пропущен, и поэтому он не работает должным образом. Я знаю, что делал это раньше с частными модулями / репозиториями. - person valosip; 01.10.2019
comment
Я попытался вставить тег 1.5.0, но получил hint: Updates were rejected because the tag already exists in the remote. ошибку. - person Kevin2566; 01.10.2019
comment
Если тег уже существует, убедитесь, что вы выполнили добавление push-репозитория модуля / репозитория модуля (в зависимости от того, как настроен модуль). Вы всегда можете удалить тег и повторно нажать новый с правильной веткой / и т.д ... трудно сказать, что именно происходит, не имея возможности увидеть pod - person valosip; 01.10.2019

Попробуй это:

pod 'podName', :git => 'git repo', :tag => '1.5.0'

Если он не может найти тег, вероятно, у вас есть ошибка в вашем .podspec файле внутри версии с тегами.

Однако вы все равно сможете установить тег следующим образом:

pod 'podName', :git => 'git repo', :branch => '1.5.0'
person alxlives    schedule 01.10.2019