A terminal user interface for Git. Inspired by Magit, and launched straight from the terminal.
Gitu aims to implement many of the core features of Magit over time. It should be familiar to any previous Magit users.
A rough list of so-far supported features:
- File/Hunk-level stage/unstage
- Show (view commits / open EDITOR at line)
- Show branches
- Branch:
- checkout
- Commit:
- commit, amend, fixup
- Fetch:
- all
- Log:
- current
- Pull / Push:
- remote
- Rebase:
- abort, continue, autosquash, interactive
A help-menu can be shown by pressing the h
key.
Run the command (recommended):
cargo install gitu --locked
...or to install from git, run:
cargo install --git https://github.com/altsem/gitu.git --locked
You can install the gitu
package from the official extra repository:
pacman -S gitu
gitu is available on Github Releases and should be installed from there.
The latest release is available here.
Download the archive that is appropriate for your platform and extract the
binary into your $PATH
. A common valid path location is /usr/local/bin
.
To build from master
on flaked Nix platforms add this repo to your inputs:
inputs = {
nixpkgs.url = "nixpkgs/nixos-unstable";
gitu.url = "github:altsem/gitu";
gitu.inputs.nixpkgs.follows = "nixpkgs";
};
Then wherever you install your packages (i.e., home-manager
):
{ inputs, pkgs, lib, system, ... }:
{
home.packages = with pkgs;
[
inputs.gitu.packages.${system}.default
];
}
The environment variables GIT_EDITOR
, VISUAL
or EDITOR
(checked in this order) dictate which editor Gitu will open.
Configuration is also loaded from ~/.config/gitu/config.toml
,
you could copy the default configuration.