https://github.com/kamontia/qs
Support your fix-up quickly with git command
https://github.com/kamontia/qs
git
Last synced: 5 months ago
JSON representation
Support your fix-up quickly with git command
- Host: GitHub
- URL: https://github.com/kamontia/qs
- Owner: kamontia
- License: mit
- Created: 2018-08-12T05:13:51.000Z (almost 8 years ago)
- Default Branch: master
- Last Pushed: 2019-06-08T07:19:45.000Z (about 7 years ago)
- Last Synced: 2024-06-20T16:43:11.278Z (about 2 years ago)
- Topics: git
- Language: Go
- Homepage:
- Size: 3.7 MB
- Stars: 5
- Watchers: 2
- Forks: 1
- Open Issues: 14
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# Quick Squash
[][release]
[][license]
[][status]
[release]: https://github.com/kamontia/qs/releases
[license]: https://github.com/kamontia/qs/blob/master/LICENSE
[status]: https://circleci.com/gh/kamontia/qs
## 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.
```bash
$ 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`:
```bash
$ go get github.com/kamontia/qs
```
If you can use `brew`:
```bash
$ brew tap kamontia/qs
$ brew install qs
```
## Contribution
1. Fork ([https://github.com/kamontia/qs/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
- [最速でGitのコミットをまとめるコマンドqs(quick squash)を作ってみた](https://qiita.com/kamontia/items/ac5c7f99599049b545e9)
- [複数のコミットをsquashするコマンド「qs(quick squash)」を作った](http://blog.chaspy.me/entry/2018/08/26/120000)
- [14日間でサクサクっとOSSをリリースした話](https://speakerdeck.com/kamontia/talking-of-releasing-oss-in-14-days)
### in English
- [QS - CLI tool to quickly squash your commit](https://dev.to/chaspy/qs---cli-tool-to-quickly-squash-your-commit-246)
- [Look back on our OSS activities](https://speakerdeck.com/chaspy/look-back-on-our-oss-activities)
## Author
[Tatsuya Kamohara](https://github.com/kamontia)
[Takeshi Kondo](https://github.com/chaspy)