#git-repository #git #version-control #sandbox #env-var #git-workflow #run-command

build garden-tools

Garden grows and cultivates collections of Git trees Garden lets you define and run commands over collections of configuration-defined multi-worktree Git environments

21 releases (8 stable)

new 1.5.0 Apr 15, 2024
1.4.1 Mar 23, 2024
1.3.0 Feb 20, 2024
1.0.0 Dec 23, 2023
0.1.0 Jun 1, 2021

#109 in Build Utils

Download history 21/week @ 2023-12-22 74/week @ 2023-12-29 10/week @ 2024-01-05 62/week @ 2024-01-12 119/week @ 2024-01-19 28/week @ 2024-01-26 43/week @ 2024-02-02 16/week @ 2024-02-09 285/week @ 2024-02-16 87/week @ 2024-02-23 65/week @ 2024-03-01 73/week @ 2024-03-08 128/week @ 2024-03-15 256/week @ 2024-03-22 62/week @ 2024-03-29 30/week @ 2024-04-05

495 downloads per month

MIT license

310KB
7K SLoC

Garden

Garden grows and cultivates collections of Git trees.

Garden helps you define development workflows that operate over collections of self-contained and inter-dependent Git worktrees.

cargo install garden-tools

Code Status

Build status MIT License

Garden is actively maintained and its core functionality is stable and feature-complete.

Documentation

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.

Features

Garden aids in common development setup steps such as setting environment variables, configuring search paths, and creating arbitrary groupings of repositories for development.

  • Bootstrap Git-based development environments from source.

  • Define arbitrary collections of Git repositories for running commands.

  • Define environment variables scoped to specific projects or trees.

  • Define custom commands and workflows in a simple declarative config file.

  • Develop, build and test interdependent projects in self-contained sandboxes.

  • Leverage your existing shell scripting knowledge. If you already know (bash/zsh/etc) shell then you can learn to use garden with minimal effort.

  • Configured using simple YAML files extended with a flexible expression syntax. Garden helps you define (multi-repository) workflows using the vast ecosystem of command-line tools.

Acknowledgements

The structure and content of the README and documentation was heavily inspired by the mdbook documentation.

Dependencies

~13–25MB
~368K SLoC