pretty-git
v1.0.5
Published
Beautiful, human-friendly Git CLI. Work with git in natural language.
Maintainers
Readme
pretty-git
✨ The human-friendly Git CLI — use plain English, move faster, never memorize commands again.
🚀 Features
- English commands: Type what you mean, e.g.
add everything,undo last commit,merge dev into main. - Grouped, colorized, searchable help (just type
helpor search by keyword). - Full Git workflow: status, add, commit, push, pull, branch, stash, log, diff, and more.
- Power-user tools: merge, rebase, cherry-pick, tag, blame, clean, file ops, and more.
- Confirmation and safety prompts for critical actions.
- Beautiful tabular help output—easy to scan and find any command.
- Cross-platform and blazing fast.
📦 Installation
npm install -g pretty-gitor use npx pretty-git for a one-off run
🟣 Usage
pretty-gitJust start typing commands in plain English:
| What you type | What happens |
|---------------------------------------|-------------------------------------------------|
| show status | See your current changes (like git status) |
| add everything | Stage all files for commit |
| commit all with message 'init' | Commit everything with a message |
| push | Push your changes |
| pull latest | Pull new commits |
| create branch feature/api | Create & switch to new branch |
| switch to branch main | Switch branches |
| stash changes | Stash current work-in-progress |
| show last 10 logs | See recent commits in a table |
| merge dev into main | Merge dev branch into main |
| rebase feature onto main | Rebase a branch |
| cherry-pick commit abc123 | Apply a specific commit |
| tag as v1.0.0 | Create a tag |
| blame index.js | See who changed what line |
| remove file secrets.txt | Delete a file from git |
| clean repo | Remove all untracked files |
| help | Open live, grouped, searchable help |
| exit | Quit the CLI |
🔎 Searchable Help Example
- Type
helpor?to see all commands. - Filter by keyword (e.g.,
branch,commit,merge) to instantly find what you need. - All commands are shown in clear, colorized tables.
💡 English Aliases
You don’t need to remember exact syntax—these all work:
add file main.jsadd main.js, utils.jsstage allcommit all with message 'foo'save changes as 'msg'undo last commitgo to mainpop stashpush everythingremove untracked files- ...and more!
🎨 Why pretty-git?
- Speed: No more “what’s that git command again?” Just type what you want.
- Safety: Confirmation prompts for dangerous actions (reset, remove, etc).
- Discoverability: Search and group all commands, instantly.
- Extendable: Easy to add new commands and English phrases.
🧑💻 Contributing
Pull requests, issues, and feature ideas are welcome!
- Fork this repo
npm install- Run locally:
npm startornpm run dev - Add your features (see
/src/commandsand/src/parsers) - Add a test in
/tests - Open a PR—describe your English commands and expected output!
🛠️ Development
- Written in TypeScript for maximum safety and scalability.
- Uses
simple-git,chalk,cli-table3, andinquirer.
📃 License
MIT © Muhammad Farhan
🌟 Show Your Support
If you like pretty-git, please ⭐️ the repo, share with friends, or tweet your favorite English command!
Questions? Open an issue
