How to store new iWork (2013) documents in a flat file (for version control)?

The tool keynote-to-text gives a textual representation of a .key file. You can register it as the text converter for a Keynote file by adding to .gitconfig:

[diff "keynote"]
  binary = true
  textconv = /PATH/TO/KEYNOTE/keynote-to-text 

And .gitattributes:

*.key diff=keynote

Then git diff provides useful output: