We’ve just shipped a private Beta at Trip30.com and noticed how easy it is to accidentally push code into production when you meant to push to release. We needed a solution to make us pause for a second and do a bit of mental verification. ‘Is what we’re pushing going to the right remote repository and, if so, is it ready for that repository?’
Our solution not only creates the pause for reflection, but is also fun and educational.
Enter Git Literate.
Git Literate is a pre-push hook that randomly picks a word from the dictionary and asks you to retype the word before your push will succeed. If you fail to retype the word correctly the push will be aborted.
Not pushing broken or unfinished code to production on accident is priceless. Having fun and learning new words regularly while protecting yourself from a repository breaking mistake is a huge bonus.
Git Literate is easily extensible and there are tons of additions that can be made to make it more fun, useful, secure, etc. If you have an idea for it Fork it, add the modified script to the modifications folder, and send a pull request or throw your idea into the issues tracker.