How do I download previous saved revisions of a Google Apps Script?

This is a bit manual but:

  • Create another script project
  • Include your original script as a library in your new script and select v1
  • In the new script add some code that uses your "library"
  • Use the script editor debugger to step into the library and you should see the code from the correct version

For example if your library is called something like "MyOldCode", include some code like this in your new script:

function getOldCode() {
  var a = MyOldCode.anExampleFunction()
}

Put a breakpoint below the "var a" line, run getOldCode() with the debugger and then step into anExampleFunction(). This will open up one file of your old code allowing you to copy and paste it elsewhere.

You can then piece together v1.

Edit 2019-04-11: There is also Romain's function for accessing old versions.

Edit 2022-05-05: With V8 and the new editor I can no longer find a way to step into a library. Rhino gives a server error, and V8 ignores the "step in".


FYI, the Apps Script API can get project files from a previous version number: https://developers.google.com/apps-script/api/reference/rest/v1/projects/getContent

If you'd like to see this in the Apps Script CLI, clasp, like clasp pull 3, I'm sure I could add this feature. https://github.com/google/clasp/ Just file a new issue.