bit

bit

bit is an experimental modernized git CLI built on top of git that provides happy defaults and other niceties:

  • command and flag suggestions to help you navigate the plethora of options git provides you
  • autocompletion for files and branch names when using
    bit add or bit checkout
  • automatic fetch and branch fast-forwarding reducing the likelihood of merge conflicts
  • suggestions work with git aliases
  • new commands like bit sync that vastly simplify your workflow
  • commands from git-extras such as bit release & bit info
  • fully compatible with git allowing you to fallback to git if need be.

Installation

Curl

curl -sf https://gobinaries.com/chriswalz/bit | sh;
curl -sf https://gobinaries.com/chriswalz/bit/bitcomplete | sh && echo y | COMP_INSTALL=1 bitcomplete

Go Get

Caveats: GOPATH and GOBIN need to be set. Verify with go env. If they're not set add this to your .bashrc or .bash_profile etc. AND reset terminal

export GOPATH=$HOME/go
export GOBIN=$(go env GOPATH)/bin
GO111MODULE=on go get github.com/chriswalz/[email protected];
GO111MODULE=on go get github.com/chriswalz/bit/[email protected];

COMP_INSTALL=1 bitcomplete;
bit

Note: Tab completion only works on Mac, Linux, Ubuntu etc.

Verify installation with:

bit

Dependencies: Git

Platform Support:

  • iTerm2 (macOS)
  • Terminal.app (macOS)
  • Command Prompt (Windows)
  • gnome-terminal (Ubuntu)

Bit specific command Usage

Create a new commit

bit save [commit message]

Save your changes to the current branch [amends current commit when ahead of origin]

bit save

Synchronize your changes to origin branch (Beta)

bit sync

You have access to ALL git commands as well. 90% of the time the above commands will have you covered.

bit commit -m "I can still use git commands", bit pull -r origin master

Example Workflow

bit switch example-branch
Branch does not exist. Do you want to create it? Y/n

yes

Switched to a new branch 'example-branch'

[Makes some changes]

bit save "add important feature"

[fix an error for important feature]

bit save

[push changes to origin]

bit sync

[two days later confirm your branch is in sync with origin]

bit sync

Features

  • Automatic fetching & fast forwarding to keep your branches up to date and prevent merge conflicts
  • Simplify your entire rebase workflow with a single command bit sync
  • Automatic suggestions at your fingertips
  • bit is fully compatible with git. All features of git are available if need be.
Common commands at your finger tips

bit

Commit, bump a tag and push with a single command

bit

Instant git statistics and config information

bit

Principles

  1. Think in the age of the cloud
  2. Embed the spirit of modern day workflows
  3. Favor simplicity over complexity
  4. Bit should have happy defaults
  5. Bit must be fully compatible with Git

GitHub