# Codebase ![CI](https://github.com/codebase-rs/codebase/workflows/CI/badge.svg?branch=master) ![Security audit](https://github.com/codebase-rs/codebase/workflows/Security%20audit/badge.svg?branch=master) ![Crates.io](https://img.shields.io/crates/v/codebase) Manage efficiently your codebase organisation & configuration across your computers. ## What is it Codebase is a CLI tool to organize your codebase efficiently across your computers. In a nutshell, it use a Git repository to store metadata about your current Codebase folder, and allow you to replicate the installation / structure / configuration across several computers. No more time spend on configuring Git, creation the folders, etc... Everything is done by running one command! Restoring a existing configured codebase is easy as running ```sh codebase clone ``` this will install the projects in their respecting folders, configure their Git repositories, re-install the Git hooks, etc... You can try it by restoring my own codebase: ```sh codebase clone https://github.com/creekorful/dot-codebase.git ``` Or if you are ready, you can import your existing codebase: ```sh codebase init --import --remote codebase push ``` And you'll be ready to go! ## What's included ### Persistent Git configuration Codebase can restore your git configuration automatically. You can configure your Git username/email, enable GPG sign, etc... View more at: https://git-scm.com/book/en/v2/Customizing-Git-Git-Configuration ### Persistent Git hooks Codebase can restore your Git hooks automatically. You can list the available hooks by running: ```sh codebase --list-hooks ``` And you can add missing ones by submitting a PR here: https://github.com/codebase-rs/hooks ## How to install Codebase is available on Unix based computer as well as a Docker image. ### Using Homebrew You can install the latest version of codebase by using [Homebrew](https://brew.sh). ```sh brew install codebase-rs/tap/codebase ``` ### Using Snap You can install the latest version of codebase by using [Snapcraft](https://snapcraft.io). ```sh snap install codebase ``` ### Using Cargo You can install the latest version of codebase from [crates.io](https://crates.io). ```sh cargo install codebase ``` ### Using Docker The codebase executable is available as a Docker image. ```sh docker pull docker.pkg.github.com/codebase-rs/codebase/codebase:0.11.0 ``` ### Others ways You can install & compile the latest (HEAD) version of codebase by using Cargo. ```sh cargo install --git https://github.com/codebase-rs/codebase.git ```