#lang scribble/manual @(require (for-label racket/base git-cli)) @title[#:tag "top"]{rash-git-cli} @author["Hans Dijkema / hans@dijkewijk.nl"] @section{Rash integration} The @tt{rash-git-cli} package adds a Linea/Rash line meaning to the @racket[git] procedure from @racketmodname[git-cli]. @verbatim{ #lang rash (require rash-git-cli) git status git add -A git log --oneline -5 git commit -m "Update documentation" } In an ordinary Racket expression, @racket[git] remains the first-class procedure exported by @racketmodname[git-cli]: @racketblock[ (git 'status) (procedure? git) ] Bare words in line mode are quoted before they are passed to @racket[git]. Quoted strings and parenthesized Racket expressions retain their normal Racket meaning. The base @tt{git-cli} package has no dependency on Rash, Linea, or this package. @section{Testing} The package tests verify the Rash/Linea integration without invoking an external Git executable. This keeps the package tests independent of the host operating system, PATH configuration, current directory, and installed Git software.