Ich habe meine eigenen privaten Spezifikationen Repository mit internen Pods. Ich habe den Pods Präfixe hinzugefügt, aber jetzt, wo ich zu Swift migriere, möchte ich sie loswerden.Cocoapods: Podfile Konflikte durch zwei Pods mit dem gleichen Namen, aber unterschiedliche Quelle
Wenn ich jedoch die Präfixe los werde (z. B. JAMNetworking zu Netzwerk) und zwei Quellen in der Poddatei angeben, bekomme ich Konflikte, da Netzwerk ein vorhandener öffentlicher Pod aus dem Master-Repository ist. Ich weiß, dass eine mögliche Lösung darin besteht, die Git-Repository-URL neben jedem Pod anzugeben, aber es ist für mich ärgerlich, die URL für jeden Pod hinzuzufügen, so dass ich nach einer eleganten Lösung suche. Ich habe einige Ideen, aber keine schien zu funktionieren:
A) Fügen Sie der Quelle einen Namen hinzu und geben Sie den Quellennamen für jeden Pod an, z.
source 'master', 'https://github.com/CocoaPods/Specs.git'
source 'internal', 'https://myurl.git'
pod 'samePodName', 'master'
pod 'samePodName', 'internal'
B) zwei Definitionen mit der Innenseite angegebenen Quelle erstellen:
def publicPods
source 'master', 'https://github.com/CocoaPods/Specs.git'
pod 'samePodName'
end
def internalPods
source 'internal', 'https://myurl.git'
pod 'samePodName'
end
target 'MyProject' do
publicPods
internalPods
end
Leider nur diese eine der def als gültig annimmt und die andere ignorieren ... so ist es in diesem Fall würde das öffentliche installieren. Wenn ich nach der Installation wechsle, deinstalliere ich das öffentliche und installiere das interne.
C) Mehrere Ziele erstellen. Es wird ein Fehler über mehrere Ziele mit demselben Namen zurückgegeben.
Denken Sie, dass es möglich ist, eine elegante Lösung zu finden, ohne die URL für jeden Pod hinzuzufügen oder das Hinzufügen von Präfixen zu vermeiden?