Awesome
WIP, WIP, & NAENAE
wip
and naenae
are command line utilities to better manage your WIP (Work In Progress) with Git.
wip
saves your progress by committing the current state of your Git repo with a commit message of "WIP" (a common convention). naenae
squashes all your "WIP" commits together and lets you give the commit a better title. By periodically saving your progress, you're free to write, rewrite, and ship faster.
Install
wip
and naenae
run in Node.js, so you'll need to have that installed, type this in the terminal:
$ npm install -g wip
If you don't have it already, you'll need to install Git, too.
Usage
When you want to save your work, type this in the terminal:
$ wip
When you've finished a big chunk of work and you're ready to ship it, type this:
$ naenae
Naenae will archive your work for safe keeping (using wip archive
), and then sqash all your WIPs into a single git commit.
HELPMEIT'SALLBROKEN
No worries! Thanks to wip
, you've been meticulously tracking your work with Git, so everything is gonna' be ok.
When things break, you can see everything you've changed since the last commit with something like:
$ git diff HEAD^ HEAD
Or you could just download the GitHub Desktop app like the rest of us. SourceTree is also a great option, especially if you're looking for more control.
FAQs
Here's some answers to questions humans might ask if they ever read this.
How do I turn the sound effects off?
You read that right – wip
and naenae
have some sweet sound effects. They're on by default (so everyone around you can share in your progress), but you can turn them off by typing:
$ wip silently
Someone turned my sound effects off, how do I get them back?
That's terrible! But all is not lost – just:
$ wip loudly
💩, why can't I see the emoji?
Unfortunately, some shells don't support emoji. If you're on Windows, you may need to upgrade to something like Cygwin. If you want to avoid seeing the "unrecognized character" boxes (or if you just hate fun) you can:
$ wip without emoji
And when you're ready to rejoin civilization:
$ wip with emoji
All the hipsters use commitizen.
And you can too! Turn it on:
$ wip with commitizen
You can also turn it back off:
$ wip without commitizen
Have you tried putting it in a watch task and commiting on save?
npm install -g watch
wip silently
watch wip --ignoreDotFiles
You won't be disappointed.
License
MIT
Naming inspired by Silentó - Watch Me (Whip/Nae Nae):