gmash
Usage
gmash [[global-args]...] <main-command> <sub-command> [[args]...]
Brief
Smash keyboard - get git. Bash scripts for high-level git & github repo management. Call [main-cmd] –help for a list of sub-commands. Call [main-cmd] [sub-cmd] –help for details of each sub-command.
Commands
dirs
High level path/file manipulation.
same
Get a diff of 2 directories.
separate
Separate a directory into its constituent parts.
squash
Squash empty paths in a directory.
find
High level file/repo/code searching and analysis.
gits
Find git repositories.
sources
Find source files.
gist
Manage GitHub Gists with git-like functionality, integrates with ‘mono’ command.
create
Push all files in a directory as gists to GitHub. Adds a title.md and readme.md by default.
clone
Clones a gist to the local filesystem.
recover
Recover a user’s gist(s) from GitHub remotes as git repos.
upload
Upload files to existing gists.
lineage
Prepend git commits from archived git repos to a more recent version.
mono
Git subtree monorepo workflow strategy.
remove
Add or re-configure a sub project to the mono repo as a subtree.
pull
Pull changes from a sub project’s remote into the mono repo.
push
Push changes in the mono repo to a sub project’s remote.
clone
Clone and configure a mono repo’s remotes based on stored subproject metadata.
Globals:
-V --verbose
Globally enable verbose output.
-Q --quiet
Globally disable output. !Warning: some command outputs may be suppressed.
-c --config <gmashConfigFile>
Use a gmash argument config file.
Display:
-h --help
Display gmash, command or subcommand help. Use -h or –help.
-v --version [v0-0-0]
Display gmash, command or subcommand version.
--versions
Display versions of gmash and all commands/subcommands.
Development:
--compile-parser
Compile command line parser source files.
--unit-tests
Run unit test to validate program.