How best to develop Google Sheets scripts and Git versioning

Best solution I've found is GAS Github Assistant.

It's a Chrome Extension that integrates with the Apps Script IDE and allows you to pull/push code from/to your repos at the click of a button.

It not only supports Github but Bitbucket as well.

UPDATE 1/30/2018

Apps Script now has a command-line interface called clasp that offers similar functionality.


If your changes are data changes that should correspond to code changes then you should follow the pattern that good database administrators have use for years.

Make the updates with code as an upgrade script checked into source. You should also make a downgrade script that undoes the changes and check it in.

If making the changes programmatically is a headache, then make the two files simply contain instructions on how to make the data changes. Include an upgrade and downgrade instruction file with each major release.