Skip to content

Latest commit

 

History

History
89 lines (67 loc) · 2.7 KB

README.md

File metadata and controls

89 lines (67 loc) · 2.7 KB

Quick Squash

GitHub release MIT License CircleCI

Description

'qs' is the git support command without the interactive editor.
You can squash some commits very quickly with the one-liner.

Usage

Easy to execute.

$ qs n..m [ -f | -d | -m commit message]

(Example) 
// You can see in git-rebase-to-do.
[4]   pick   ff2ec6a Add file-A 
[3]   pick   bbe19f3 Add file-B
[2]   squash 5544b4e Add file-C      // squash to index number 3
[1]   squash 29d02e7 Add file-D      // squash to index number 3
[0]   pick   76f6a9b Add file-E  

// In this case, you type ...
$ qs 1..3 -f
$ ...(some logs)
$ Success!

$ git log --oneline 
 bd28afa Add file-E
 823bad4 Add file-B
 ff2ec6a Add file-A

Congratulations !
qs command can squash some commits very quickly!
Wao!

If conflicts occur, qs can NOT squash automatically.
You must rebase manually.

Demo

Install

To install, use go get:

$ go get github.com/kamontia/qs

If you can use brew:

$ brew tap kamontia/qs
$ brew install qs

Contribution

  1. Fork (https://github.com/kamontia/qs/fork)
  2. Create a feature branch
  3. Run go fmt
  4. Commit your changes
  5. Rebase your local changes against the master branch
  6. Run test suite with the go test and ./script/test.sh command and confirm that it passes
  7. Create a new Pull Request

Presentations / Articles

in Japanese

in English

Author

Tatsuya Kamohara
Takeshi Kondo