Carthage: How to get the very latest version of a given repository?

Chris Conover picture Chris Conover · Jul 16, 2015 · Viewed 15.3k times · Source

The Cartfile documentation makes the assertion:

If no version requirement is given, any version of the dependency is allowed.

with the contradictory example:

# Use the latest version
github "jspahrsummers/xcconfigs"

Furthermore, it is not stated, but from testing, I infer that "latest" is actually the version of the latest tag. Is this interpretation correct? And if so, how does one specify the very latest commit - do you have to manually check and specify the latest commit, or is there a simpler way?

Answer

Gabriele Petronella picture Gabriele Petronella · Jul 16, 2015

The documentation states

Carthage supports several kinds of version requirements:

  • >= 1.0 for “at least version 1.0”
  • ~> 1.0 for “compatible with version 1.0”
  • == 1.0 for “exactly version 1.0”
  • "some-branch-or-tag-or-commit" for a specific Git object (anything allowed by git rev-parse)

so I believe

github "jspahrsummers/xcconfigs" "HEAD"

should work as expected, since "HEAD" is a valid argument for git rev-parse

Alternatively

github "jspahrsummers/xcconfigs" "master"

or any other branch