#lang rash (require rash-coreutils rash-makefile package-zipper "main.rkt") (makefile 'rash-git-cli (target 'all (displayln "make clean, make zip, make status, make sync")) (target 'clean (for-each (λ (f) (displayln f) (rm-f f)) (list-files "." #px"([.]bak|~)$" #:recursive #t)) (for-each (λ (d) (displayln d) (rm-rf d)) (list-dirs "." #px"(compiled|doc|docs)$" #:recursive #t)) (when (directory-exists? "scribblings") (for-each (λ (f) (displayln f) (rm-f f)) (list-files "scribblings" #px"[.](css|js|html)$"))) ) (target 'ver (displayln (git 'next-version)) ) (target 'zip (deps 'clean) (zip-package #:exclude '(".git" ".gitignore"))) (target 'status { git status }) (target 'sync { git status git add -A git commit git push }) (target 'pull { git pull }) )