A SwiftPM plugin that codegens a version number, as read by Git, for use in tooling
Split from Apple's swift-testing repo and Xcode plugin added to the interface.
The version is determined from:
- If the repository is sitting at a tag with no uncommitted changes, use the tag.
- Otherwise, use the commit hash (with a "there are changes" marker if needed.)
- Finally, fall back to nil if nothing else is available.