Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/jwu910/check-it-out

A command line interface for Git Checkout. See branches available for checkout.
https://github.com/jwu910/check-it-out

check-it-out check-out checkout cli cli-tool command-line command-line-interface command-line-tool developer-tools devtool devtools git git-branch git-cli github-cli javascript js nodejs productivity

Last synced: 3 days ago
JSON representation

A command line interface for Git Checkout. See branches available for checkout.

Awesome Lists containing this project

README

        



Check It Out Logo



commitizen friendly badge


first-timers-only


Build Status


Downloads per week


npm version


GitHub version


Total alerts


Code Climate Score


Tweet



Buy Me A Coffee



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](#requirements)
- [Compatibility](#compatibility)
- [Installation](#installation)
- [Installing from source](#installing-from-source)
- [Local development](#local-development)
- [Usage](#usage)
- [Features](#features)
- [Settings](#settings)
- [Contributing](#contributing)
- [Contributors](#contributors)
- [Acknowledgements](#acknowledgements)
- [License](#license)

## Requirements

[Node >= v16](https://nodejs.org/en/blog/release/v16.20.1) - _note:_ developed and tested on Node 16 and up. There isn't a guarantee this will work on earlier versions.

[Git](https://git-scm.com/book/en/v2/Getting-Started-Installing-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](https://github.com/jwu910/check-it-out/issues/128)

## Installation

We're on [NPM!](https://www.npmjs.org/package/check-it-out)

```
npm install -g check-it-out
```

### Installing from source

[Fork](https://github.com/jwu910/check-it-out#fork-destination-box) 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 dist/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
```

![Check It Out Usage](docs/assets/images/checkit-usage.gif)

## Features

See a git log for the highlighted ref by pressing SPACE

![Quick Git Log!](docs/assets/images/checkit-log.gif)

| 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`:

```
cio --reset-config
```

## Contributing

Please refer to the [Contributing Guidelines](./CONTRIBUTING.md) before contributing.

See the rest of our [issues](https://github.com/jwu910/check-it-out/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.



Brandon Benefield
Brandon Benefield

πŸ“–
Aaron Casanova
Aaron Casanova

πŸ’»
Drew Brokke
Drew Brokke

πŸ’» πŸ€” 🚧
Johanna Tchon
Johanna Tchon

πŸ’»
Jenell Pizarro
Jenell Pizarro

πŸ“–
Rebecca Hong
Rebecca Hong

🎨
Jesse Ma
Jesse Ma

πŸ’»


Kien Do
Kien Do

πŸ’¬ πŸ› πŸ€”
Vu Tran
Vu Tran

πŸ’¬ πŸ“– πŸ€” πŸ“’
Efrain 'Rain' Rivas
Efrain 'Rain' Rivas

πŸ’¬ πŸ› πŸ’‘ πŸš‡ πŸ’» πŸ“–
Phuc Le
Phuc Le

πŸ’¬ πŸ“’
Can Cellek
Can Cellek

πŸ’» πŸ“–
Aras Atasaygin
Aras Atasaygin

🎨
Donald Lika
Donald Lika

πŸ’»


Connor Markwell
Connor Markwell

πŸ’»
ahlaw
ahlaw

πŸ’»
Kwadwo Busumtwi
Kwadwo Busumtwi

πŸ“–
Dev Kant K Chouhan
Dev Kant K Chouhan

πŸ“–
Jaya Krishna Namburu
Jaya Krishna Namburu

πŸ’»
CΓ©leste Robinson
CΓ©leste Robinson

πŸ“–
Juliardi ΨΉΨ¨Ψ―Ψ§Ω„Ω„Ω‡
Juliardi ΨΉΨ¨Ψ―Ψ§Ω„Ω„Ω‡

πŸ’»


Omar Roa
Omar Roa

πŸ“–
Rachana
Rachana

πŸ’»
aksappy
aksappy

πŸ›
Mahendra Kumar
Mahendra Kumar

πŸ’» πŸ“–
Anthony Camarillo
Anthony Camarillo

πŸ’» πŸ‘€ 🚧
TheCoolBlackCat
TheCoolBlackCat

πŸ’» πŸ“–
Jimmy Vu
Jimmy Vu

πŸ“–


Catherine Njenga
Catherine Njenga

πŸ“–
Himanshu Chauhan
Himanshu Chauhan

πŸ›

### Acknowledgements

[@drewbrokke](https://github.com/drewbrokke) was the initial spark that inspired the creation of this project and encouraged me to let me curiosity drive this forward.
[@kiend](https://github.com/kiend) gave me the inspiration and motivation to finish this project after letting it sit for so long. [Check This Out](https://github.com/kiend/check-this-out). Thank you both for the encouragement and support through my career.

Logo Design by [@arasatasaygin](https://github.com/arasatasaygin) [@openlogos](http://openlogos.org)

### License

MIT @ [Joshua Wu](https://www.npmjs.com/~jwu910)