Garden grows and cultivates collections of Git trees.
Garden is a simple yet expressive command runner and multi-repo Git configuration tool. Garden helps you create development workflows over collections of self-contained, loosely-coupled and inter-dependent Git worktrees.
cargo install garden-tools
Read the Garden User Guide for details on how to use and configure Garden.
Read the Garden API Documentation for details on how to use the Garden APIs for developing Garden.
Garden bootstraps Git-based multi-repo development environments from source.
Garden can store and apply git config
and git remote
configuration to existing
or new Git worktrees that Garden can "grow" (clone) into existence.
Garden runs commands over collections of Git repositories.
The simplicity of Garden's syntax and its dynamic expression variables
makes it a viable replacement for make
when used as a simple task runner.
Garden is configured using YAML files alongside a familiar UNIX shell syntax that
leverages your existing shell knowledge. If you already know POSIX/bash/zsh shell then
you can learn to use garden
with minimal effort.
Garden seeds ~ reusable templates for garden.
Garden is actively maintained and its core functionality is stable and feature-complete.