git-leave logo

Check for unsaved or uncommitted changes on your machine

Nix Powered Cachix Cache Time spent

# Installation
With cargo via crates.io Install from repository with cargo: ```sh cargo install git-leave ``` You will also need `openssl` library in path, which you can install over you prefered package manager.
With nix flakes A `flake.nix` is available which means that you can use `github:mrnossiom/git-leave` as a flake identifier, so you can. - import this repository in your flake inputs ```nix { git-leave.url = "github:mrnossiom/git-leave"; git-leave.inputs.nixpkgs.follows = "nixpkgs"; } ``` Add the package to your [NixOS](https://nixos.org/) or [Home Manager](https://github.com/nix-community/home-manager) packages depending on your installation. - use with `nix shell`/`nix run` for temporary testing e.g. `nix shell github:mrnossiom/git-leave` - use with `nix profile` for imperative installation e.g. `nix profile install github:mrnossiom/git-leave` Package is reachable through `packages.${system}.default` or `packages.${system}.git-leave`.
# Usage ``` Check for unsaved or uncommitted changes on your machine Usage: git-leave [OPTIONS] [DIRECTORY] Arguments: [DIRECTORY] The directory to search in [default: .] Options: -d, --default Use git config default folder value for the directory to search in --follow-symlinks Should we follow symlinks --show-directories Should we show the directories we are actually crawling --threads The number of cores to use for crawling [default: number_of_cores] -h, --help Print help -V, --version Print version ``` - To check all repos under the current directory ```sh git leave ``` - To check all repos under the specified directory ```sh git leave path/to/directory ``` - To check all repos under the default directory (see config) ```sh git leave --default ``` # Config Set the `leaveTool.defaultFolder` key in your git global configuration file to use the `--default` or `-d` flag. In `.config/git/config`, or any other git config file: ```conf [leaveTool] defaultFolder = ~/path/to/projects ``` # Credits - **[woobuc/sweep](https://github.com/woobuc/sweep)** for many concepts I implemented here (e.g. threads, logging) --- Work is licensed under [`CECILL-2.1`](https://choosealicense.com/licenses/cecill-2.1/), a French OSS license that allows modification and distribution of the software while requiring the same license for derived works.