0.4.0
sq-git-log - Lists and verifies commits
sq-git log
[OPTIONS] COMMIT_RANGE
Lists and verifies commits.
Lists and verifies that the commits from the given trust root to the target commit adhere to the policy.
A version is considered authenticated if there is a path from the trust root to the target commit on which each commit can be authenticated by its parent.
If the key used to sign a commit is hard revoked, then the commit is
considered bad. sq-git
looks for hard revocations in all of
the commits that it examines. Thus, if a project maintainer adds a hard
revocation to a commit's policy file, it will cause later *and* earlier
commits signed with that key to be considered invalid. This is useful
when a key has been compromised.
When a key has been hard revoked, downstream users either need to
start using a more recent trust root, or the upstream project
maintainers need to audit the relevant commits. If the commits are
considered benign, they can be added to a goodlist using
sq-git policy goodlist
. When a commit is considered
authenticated, but the certificate has been hard revoked,
sq-git
looks to see whether the commit has been goodlisted
by a commit that is on an authenticated path from the commit in question
to the target. If so, the commit is considered to be authenticated.
Continues to check commits even when it is clear that the target commit cannot be authenticated.
Causes sq-git log
to continue to check commits rather
than stopping as soon as it is clear that the version can't be
authenticated.
Use an alternate policy.
The default policy is the openpgp-policy.toml
file in
the root of the repository's working tree.
After authenticating the current version, prunes the certificates.
After authenticating the current version, prunes unused components of the certificates. In particular, subkeys that were not used to verify a signature, and user IDs that were never considered primary are removed.
This does not remove unused certificates from the policy file; this just minimizes them.
This requires the retire-user
capability.
Specifies the trust root.
If no policy is specified, then the value of the git repository's
sequoia.trustRoot
configuration key is used as the trust
root.
The commits to check.
If not specified, HEAD is authenticated with respect to the trust root.
If a single commit ID is specified, the specified commit is authenticated with respect to the trust root.
If a commit range like 3895a3a..3b388ae
is specified,
the end of the range is authenticated with respect to the trust root,
and there must be an authenticated path from the trust root via the
start of the range to the end of the range.
See sq-git(1) for a description of the global options.
sq-git(1).
For the full documentation see <https://sequoia-pgp.gitlab.io/sequoia-git>.
0.4.0