AtlatestRenderedmarkdown
Readme
sigil-git
Git operations for Sigil tools — URL parsing, bare-repo cloning, worktree management, and remote fetch via shell-out to the system git.
This package was extracted from the sigil monorepo — the in-tree history under packages/sigil-git/ is preserved here as master.
It backs the dependency resolver in sigil-build (cloning + fetching from-git deps) and is also reusable as a small git API for any Sigil tool that needs to talk to a forge.
Usage
(import (sigil git))
;; Parse a forge-shorthand URL
(parse-git-url "codeberg:sigil/sigil-git")
; => alist with forge='codeberg user="sigil" repo="sigil-git"
;; Bare-clone for the dep cache
(git-clone-bare "codeberg:sigil/sigil-git" "/tmp/sigil-git.git")
;; Add a detached-HEAD worktree at a specific ref
(git-worktree-add "/tmp/sigil-git.git" "/tmp/wt" "v0.13.1")The full export list lives at the top of src/sigil/git.sgl.
Build & test
This is a pure-Scheme package. No native build step.
sigil deps install # fetch sigil-stdlib via codeberg:sigil/sigil-lang
sigil test --report # run test/test-git.sglFor local development against an unpublished sigil-lang, use dev-redirects.sgl (sibling checkout at ../sigil-lang/):
sigil deps install --redirects ./dev-redirects.sgl
sigil test --redirects ./dev-redirects.sgl --reportLicense
BSD-3-Clause. See the monorepo for the canonical license text.