Check it out, before you checkout.
Check It Out lets you interactively see and choose what branch you want to check out without the hassle of trying to type out a long or confusing branch name. Checking out branches just got even simpler!
Requirements
Git - Required for core features
Compatibility
Check It Out currently has known issues with Windows. Some users have reported it working while others have reported that it does not. It is built and tested mostly in an Arch Linux environment with some user testing on MacOS and other Linux distributions. We're currently looking for help figuring out why Check It Out is unstable on Windows. See CIO-128
Installation
We're on NPM!
npm install -g check-it-out
Installing from source
Fork or clone the repository
git clone https://github.com/jwu910/check-it-out.git
Navigate to your repository directory and run
npm install
Create a symbolic link to the entry point
In the repository directory run:
npm link
Local development
From your repository directory run
npm run build
To start the application you can run
node index.js
or
npm start
If you want to test your local build in other repositories, you can use npm link
which will let you run your local build files with the cio
or checkit
aliases.
Usage
To get started, just run:
checkit
or
cio
Features
See a git log for the highlighted ref by pressing SPACE
Commands | Description |
---|---|
j/k, ▼/▲ | Navigate the list |
h/l, ◄/► | Previous/Next remote |
Ctrl+r | Refresh list with a fetch and prune |
enter | Select highlighted item |
y | Copy highlighted item |
space | Git log |
& | Filter lines - enter blank search to show all lines |
/ | Search Lines |
n | Jump to next search result |
N | Jump to previous search result |
q, Ctrl+c, esc | Quit |
Settings
Git log argument validation is planned, but not finished. Currently, if the git log fails, space should not crash the app, but the process should not spawn at all.
Configurable settings can be found at ~/.config/configstore/check-it-out.json
Options include:
- gitLogArguments
- Type: Array
- Default:
['--color=always', '--pretty=format:%C(yellow)%h %Creset%s%Cblue [%cn] %Cred%d ']
- Array of strings of valid git log arguments.
- sort
- Type: String
- Default: -committerdate
- Sort references by latest commit date. Value must be a valid sort key or Check It Out will break on start.
- themeColor
- Type: String
- Default:
#FFA66D
- A hex color code to style Check It Out
To reset Check It Out to its original configurations listed above, start with the flag --reset-config
:
checkit --reset-config
Contributing
Please refer to the Contributing Guidelines before contributing.
🚨 Recent change! In the past I asked to send pull requests to my development branch, but that is being changed. I will be dropping the development
branch and keeping just master
as the default branch. Please take note if you are looking to submit a PR. Thanks!
See the rest of our issues
Contributors
This project wouldn't have been possible with the help so many contributors both in and out of the source code. I look forward to working with you as this project continues to evolve and improve.
Acknowledgements
Thanks to @kiend for the inspiration and motivation to finish this project. Check This Out.
Logo Design by @arasatasaygin @openlogos
License
MIT @ Joshua Wu