50 stable releases (5 major)

6.7.0 Oct 25, 2021
5.5.4 Dec 19, 2020
5.5.1 Sep 6, 2020
5.4.2 Jun 21, 2020
1.4.2 Jun 6, 2019

#1845 in Command line utilities

Download history 125/week @ 2024-07-27 116/week @ 2024-09-21

116 downloads per month

GPL-3.0 license

2.5MB
4K SLoC

Rust

verco

A simple Git/Mercurial/PlasticSCM tui client based on keyboard shortcuts

Screenshots

log screen

verco workflow

Features

  • One interface for many version control backends
  • Support for Git, Mercurial (Hg) and Plastic SCM
  • Supported actions:
    • status
    • revision history
    • revision details
    • discard changes
    • checkout revision
    • checkin changes
    • branch and tag management (list/create/delete)
    • merge
    • push/pull/fetch
  • Everything accessible through at most two keys

Goals

  • implement everyday version control actions (opinionated)
  • cross-platform (Windows, Linux, BSD, Mac)
  • responsive ui even when it's executing some heavy operation
  • zero dependencies (besides platform libs)

Non Goals

  • cover all api surface of a given version control
  • custom keybindings (we implement redundant keybindings, though)
  • configuration file/environment var (cli options is fine)
  • clone, repo init and complex actions (should be left for their respective cli)
  • rebase support

Platforms

This project uses Cargo and pure Rust stable and works on latest versions of Windows, Mac, Linux and BSD.

Its only dependencies are:

Install

You can either install it via cargo or download the binaries from github releases.

If you go the cargo route, you need to have it installed (usually using rustup). In a terminal, run this command to install verco:

cargo install verco

Then you'll be able to run verco from whichever directory you in.

Packaging status

Fedora (COPR)

sudo dnf copr enable atim/verco -y
sudo dnf install verco

Arch Linux (AUR)

verco can be installed from the available AUR packages using an AUR helper. For example:

paru -S verco

Usage

In a terminal in a repository folder, type in the verco command. It will launch verco's tui and you'll be able to interface with Git/Mercurial/PlasticSCM.

Dependencies