SQ-GIT(1)

πŸ“¦
version 0.6.0 Β· 2 versions
, in fedora 43, fedora 44, nixos 26.05, nixpkgs unstable

✨ SQ-GIT(1) ✨

okay bestie, pull up a chair, we're reading a man page and it's literally gonna be fun πŸ’… This one lives in the User Commands section of the manual, it's called sq-git, and this particular page is all about one lil subcommand. Let's go πŸ¦‹


🌸 NAME 🌸

sq-git-update-hook β€” a git update hook that enforces the policy. That's the whole vibe. It's a hook, it checks the policy, no cap. ✨


πŸŽ€ SYNOPSIS πŸŽ€

sq-git update-hook [OPTIONS] REF_NAME OLD_OBJECT NEW_OBJECT

πŸ¦‹ DESCRIPTION πŸ¦‹

So it's a git update hook that enforces the policy. Simple as that, but the way it does it is lowkey iconic. πŸ‘‘

To make it actually do its thing, you drop this line into hooks/update on the shared git server, and boom β€” it enforces the policy that's embedded in the repository, starting at the trust root COMMIT:

sq-git update-hook --trust-root=<COMMIT> "$@"

Now here's the tea on how it decides stuff. πŸ“

When a branch is pushed that is not previously known to the server, sq-git update-hook checks that all commits starting from the trust root to the pushed commit adhere to the policy. Fresh branch, full vibe check, every commit from the trust root down. βœ…

When a branch is pushed that is previously known to the server, i.e. the branch is updated, sq-git update-hook checks that all new commits starting from the commit previously known to the server to the pushed commit adhere to the policy. So it's not re-checking the whole history, just the new stuff. Efficient queen. πŸ’–

But wait, plot twist 😭 β€” if there is no path from the previously known commit to the new one, that means the branch has been rebased. And then? We fall back to searching for a path from the trust root. Periodt.


✨ OPTIONS ✨

πŸ’… Subcommand options

  • --policy-file=POLICY β€” Use an alternate policy. The default policy is the openpgp-policy.toml file in the root of the repository's working tree. So if you don't say anything, that's the one it grabs. 🌈
  • --trust-root=COMMIT β€” The commit to use as a trust root. This is your starting point, your anchor, your main character commit. ⭐
  • REF_NAME β€” The name of the ref being updated. Supplied as the first argument to the update hook, see githooks(5). πŸ‘‘
  • OLD_OBJECT β€” The old object name stored in the ref. Supplied as the second argument to the update hook, see githooks(5). πŸŽ€
  • NEW_OBJECT β€” The new object name stored in the ref. Supplied as third argument to the update hook, see githooks(5). πŸ¦‹

🧚 Global options

  • See sq-git(1) for a description of the global options. That's where all the global bestie knowledge lives. πŸ’œ

πŸ”₯ SEE ALSO πŸ”₯


πŸ’– VERSION πŸ’–

0.6.0


and that's the whole page, bestie 🫢 This icon was brought to you by Sequoia PGP, version 0.6.0, dated 0.6.0 β€” same number twice, we love a consistent queen. Now go enforce that policy. Slay. πŸ’…βœ¨πŸŽ€

πŸ“¦ where this page comes from
  • fedora 43: sequoia-git 0.6.0-4.fc43
  • fedora 43: sequoia-git 0.6.0-6.fc43 Β· LGPL-2.0-or-later AND Apache-2.0 AND BSD-3-Clause AND BSL-1.0 AND MIT AND MPL-2.0 AND Unicode-3.0 AND Unicode-DFS-2016 AND Zlib AND bzip2-1.0.6 AND (0BSD OR MIT OR Apache-2.0) AND (Apache-2.0 OR BSL-1.0) AND (Apache-2.0 OR MIT) AND (Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT) AND (BSD-2-Clause OR Apache-2.0 OR MIT) AND (MIT OR Apache-2.0 OR Zlib) AND (Unlicense OR MIT)
  • fedora 44: sequoia-git 0.6.0-4.fc44
  • fedora 44: sequoia-git 0.6.0-6.fc44 Β· LGPL-2.0-or-later AND Apache-2.0 AND BSD-3-Clause AND BSL-1.0 AND MIT AND MPL-2.0 AND Unicode-3.0 AND Unicode-DFS-2016 AND Zlib AND bzip2-1.0.6 AND (0BSD OR MIT OR Apache-2.0) AND (Apache-2.0 OR BSL-1.0) AND (Apache-2.0 OR MIT) AND (Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT) AND (BSD-2-Clause OR Apache-2.0 OR MIT) AND (MIT OR Apache-2.0 OR Zlib) AND (Unlicense OR MIT)
  • nixos 26.05: sequoia-git 0.6.0
  • nixpkgs unstable: sequoia-git 0.6.0
  • πŸ’– girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms