I have a workflow that I'm happy with for creating, rendering, and archiving, slide content for my classes.
I have a single file that contains stubs for the entire semester's lectures. This allows me to quickly capture ideas for future lectures without leaving the file.
At the beginning of the semester, I run a script that creates stubs for each lecture with slide headers and dates.
I started pooling all my figures into a single folder and then using symbolic links from each class directory to the same figure folder. This lets me cut and paste slides easily and recompile with the figures being linked correctly.
Once a lecture is complete, I copy that lecture's text into a separate file lecture-NN.md.
I use Pandoc with the Beamer option to create PDF slides.
Using Make and the wildcard function I can compile PDFs for all the markdown files.
Rather than page through the separate older files, I concatenate them into a single markdown file and render a pdf. This allows me to quickly see what I've already covered.
I was a Keynote user for a long time, but I found it cumbersome to retrieve old figures from inside previous presentations. Having all figures exposed as files makes reuse quicker for me.