What Exactly Does 'Pod Repo Update' Do

What exactly does `pod repo update` do?

As per the documentation pod repo update updates the spec repos located at ~/.cocoapods/repos in your home folder.

Updates the local clone of the spec-repo NAME. If NAME is omitted this
will update all spec-repos in ~/.cocoapods/repos.

The repo is basically a list of all pods and versions available. I have just encountered an error in our CI builds because the repo did not include a spec for a library I have just added. By running pod repo update it now knows of this newer version and can continue to install it.

So to answer your question.. Running pod repo update in your documents folder will not do anything in that folder. It will update its pod spec references in your ~/.cocoapods/repos folder only.

What is the difference between pod install and pod install --repo-update?

If there is an existing Podfile.lock that specifies the versions of all requested pods, there is no difference.

If there isn't an existing Podfile.lock, the --repo-update will install the latest versions available from the CocoaPods trunk. Without the option, pod install will only install the latest versions already available locally.

What does Pod Repo Remove Master do?

The Master(Specs) Repo is the repository on GitHub that contains the list of all available pods. In case it is broken or not up-to-date you might face issues while installing or updating your pods.

By pod repo remove master you removed the master repo which might be broken or not up-to-date.

Newly submitted Podfile won't install with pod install but instead installs with pod install --repo-update

pod install --repo-update and pod update update your local copy of the centralized CocoaPods Specs repository with the latest version.

pod install will use the previous local copy on your machine.

If a pod publisher published a new version after the last time you updated your local copy, pod install won't have access it to it. That's why you need to specify --repo-update.

What is the meaning of the version numbers in an output of pod outdated?

In general, this is the scheme of a line of pod outdated's output:

- <pod name> <current version> -> <latest version (with restrictions)> (latest version <latest version (without restrictions)>)

The first version number (before the arrow) is the current version of a Pod.

The second number (after the arrow) is the latest available version according to the restrictions in your Podfile.

The third version number (inside the brackets, after "latest version") is the latest available version without the personal restrictions.

From CocoaPods Guides:

When you run pod outdated, CocoaPods will list all pods which have newer versions than the ones listed in the Podfile.lock (the versions currently installed for each pod). This means that if you run pod update PODNAME on those pods, they will be updated — as long as the new version still matches the restrictions like pod 'MyPod', '~>x.y' set in your Podfile.



Related Topics



Leave a reply



Submit