pkgs/build-support/fetchgit: add fetchTags parameter
Added fetchTags feature to fetchgit, explicit and clear support for fetching all tags after the source tree fetch completes. Doing this at build-time in the fetcher is required for packages that invoke commands like 'git describe' which require tags, and since the nix store is read-only by design, it is not possible to git fetch --tags at activation- or run-time. This feature may have been possible by specifying a postFetch option including calling git fetch --tags, however doing so obfuscates the solution to this very real problem. Explicit support for fetching tags should be a first class citizen just like fetching other refs.
This commit is contained in:
@@ -795,6 +795,10 @@ Additionally, the following optional arguments can be given:
|
||||
: Clone the entire repository as opposing to just creating a shallow clone.
|
||||
This implies `leaveDotGit`.
|
||||
|
||||
*`fetchTags`* (Boolean)
|
||||
|
||||
: Whether to fetch all tags from the remote repository. This is useful when the build process needs to run `git describe` or other commands that require tag information to be available. This parameter implies `leaveDotGit`, as tags are stored in the `.git` directory.
|
||||
|
||||
*`sparseCheckout`* (List of String)
|
||||
|
||||
: Prevent git from fetching unnecessary blobs from server.
|
||||
|
||||
Reference in New Issue
Block a user