46 lines
1.8 KiB
Org Mode
46 lines
1.8 KiB
Org Mode
#+title: gis
|
|
#+subtitle: Get status information about multiple Git repositories
|
|
|
|
/gis/ is a Bash script which shows a status summary of multiple Git repositories.
|
|
|
|
It was inspired by [[https://wiki.ros.org/wstool][wstool]], [[https://github.com/dirk-thomas/vcstool][vcstool]] and the default [[https://starship.rs/][Starship]] prompt.
|
|
|
|
[[./screenshot.png]]
|
|
|
|
* Usage
|
|
|
|
#+begin_example
|
|
Usage: gis [COMMANDS] [OPTIONS]
|
|
|
|
Show a status summary of all Git repositories which are found recursively in
|
|
current work directory. If the colon-separated environment variable $GIS_PATH
|
|
is set, the declared directories will be used instead.
|
|
|
|
COMMANDS
|
|
fetch Execute 'git fetch --prune --all' for all found repositories
|
|
pull Execute 'git pull' for all found repositories which are behind upstream
|
|
|
|
OPTIONS
|
|
-p, --path PATH Use PATH for searching Git repositories
|
|
-h, --help Show this help message and exit
|
|
#+end_example
|
|
|
|
* Installation
|
|
|
|
Place the =gis= script in your =$PATH=.
|
|
To use the autocompletion feature source the =gis_completion.bash= script.
|
|
|
|
On ZSH additionally the =compinit= and =bashcompinit= modules must be loaded before sourcing the completion script:
|
|
|
|
#+begin_src sh
|
|
autoload -U +X compinit && compinit
|
|
autoload -U +X bashcompinit && bashcompinit
|
|
#+end_src
|
|
|
|
Alternatively, installation scripts for Bash (=install.bash=) and ZSH (=install.zsh=) are provided which will link the two files to =~/.local/{bin/gis,share/bash-completion/completions/gis}= and add the corresponding entries to =~/.bashrc= or =~/.zshrc=.
|
|
Further updates of /gis/ require just =git pull=.
|
|
|
|
** Nix Flake
|
|
|
|
This repository is also a [[https://nixos.wiki/wiki/Flakes][Nix Flake]].
|
|
/gis/ is provided as package under =github:Deleh/gis#gis=.
|