yut148 / bit

Bit is a modern Git CLI

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Tweet

bit
Version Version Version Version

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/bit@latest;
GO111MODULE=on go get github.com/chriswalz/bit/bitcomplete@latest;

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

Inspiration

Thanks to Gitless, git-extras, researchers in the field and of course the developers of git itself! Also, thanks to go-prompt for the interactive prompt library

News

About

Bit is a modern Git CLI

License:Apache License 2.0


Languages

Language:Go 99.9%Language:Shell 0.1%