电子表格宏的版本控制

时间:2017-08-20 15:49:07

标签: git google-apps-script development-environment

不久前,我的未婚妻要我帮他创建一个电子表格来管理她的新小企业。来发现她实际上正在寻找一个完全成熟的CRM。作为我未来的好丈夫,我决定用一些GoogleSheets宏来解决这个问题。大约两周后,我有基本的库存处理,但项目已经比我预期的要大。浏览器内的Syder IDE和基本版本管理并没有真正削减它。

我现在的问题:我想在gitHub中开始管理这个项目,但我找不到一个优雅的方法来做到这一点。我在独立的应用脚本文件上发现了this博文,但我似乎无法在我的Google云端硬盘中找到我的宏(.gs)文件。

我的问题:这些文件位于何处?有没有办法使用,例如eclipse开发我的宏并将它们存储回电子表格,同时还使用git或其他版本控制?

编辑:到目前为止得到了一些很好的反馈,但显然Cloud Tools for Eclipse不允许以与Google插件相同的方式编辑Apps脚本,请参阅here

2 个答案:

答案 0 :(得分:2)

根据Michelle的说明完成将代码迁移到独立脚本后,您可能需要查看此Chrome扩展程序:

Google Apps Script Github Assistant

它与Apps Script GUI集成,用于从github推送源和从github获取源。它是一个非常方便的工具。

P.S。 Chrome扩展程序也适用于绑定脚本,但我发现Apps脚本代码在独立脚本时更容易重用。

答案 1 :(得分:1)

正如Anton所说,无法访问Google表格界面之外的电子表格绑定脚本文件。您可以在新的独立Google Script文件中复制粘贴所有代码。但是,这可能需要进行一些代码更改,如下所述。

SpreadsheetApp.getActiveSpreadsheet的来电需要由SpreadsheetApp.openById替换,电子表格的ID是硬编码的。其他getActive *方法(如getActiveSheetgetActiveRange)可以在该电子表格对象上调用,而不是直接调用SpreadsheetApp。

任何简单的触发器(如onOpen或onEdit)都需要由独立脚本安装在电子表格中的可安装触发器替换。因此,脚本应该有一个安装的函数,比如onOpen,需要手动执行一次。见sample code for installing a trigger