git playback
It was a lovely Saturday afternoon… I just did a code kata, but I was not entirely happy and not sure how to do it better. So I decided to look at how other developers tackled the same problem. Found a dozen repositories on GitHub, but there were a couple of problems:
- A lot of them consisted of exactly one commit.
- Looking through commits on GitHub is not the most convenient solution in this case.
Code Katas are about the process, not about the result. I wanted to a nice way to view the steps, to see how someone got to the destination, and so the idea for git-playback was born.
So what exactly is git-playback? It’s a bash script that goes through all commits in the current branch of repository and creates a slideshow using the specified files. Example output (use arrow keys to navigate):
String Calculator Kata in Python
You can find the source from which this playback was generated on GitHub.
If that got you interested, you can try it yourself:
git clone git://github.com/mmozuras/git-playback.git
cd /repository/you/want/to/playback
sh /path/to/git-playback/git-playback file1 file2
open playback.html
This post was written in the spirit of quick feedback. At this point, git-playback can still be greatly improved. Here’s what I intend to add in the nearest feature:
- Add script options for things like: branch, style, font etc.
- Make the output nicer: line numbers, commit message and highlight changes.
- Create git-playback-jekyll. Look at how your jekyll-based website changed from commit to commit.
Would love to hear what you think about git-playback!