Legit is a complementary command-line interface for Git, optimized for workflow simplicity. It is heavily inspired by GitHub for Mac.

Git Workflow for Humans

Feature branch workflows are dead simple.

$ git switch <branch>
# Switches to branch. Stashes and restores unstaged changes.

$ git sync
# Syncronizes current branch. Auto-merge/rebase, un/stash.

$ git publish <branch>
# Publishes branch to remote server.

$ git unpublish <branch>
# Removes branch from remote server.

$ git harvest <branch>
# Auto-merge/rebase commits from given branch.

$ git sprout <branch>
# Sprout a new branch from the current branch.

$ git graft <branch>
# Merge unpublished branch into current branch, then remove it.

$ git branches
# Nice & pretty list of branches + publication status.

$ git undo [--hard]
# Removes the last commit from history.

Installing Legit

To install the legit command:

$ pip install legit
$ pip install legit

To enable the git aliases:

$ legit install

Nice and simple — the way it should be.

Fork me on GitHub