Google Apps脚本修订历史记录仅可以追溯到几天

时间:2017-09-22 23:44:12

标签: google-apps-script

我有一个Google Apps脚本,我整个星期都在努力。我有6个保存的版本可以追溯到9/18。我可以去“管理版本”并查看所有这些版本,但我无法恢复它们。

当我“查看修订历史”时,它只会回到9/21。

有一点需要注意,这个项目的大部分都在.html文件中,而不是.gs文件。是否有希望获得以前版本的代码?

1 个答案:

答案 0 :(得分:0)

从以前保存的版本中获取代码的唯一方法是使用 Apps Script API。代码编辑器无法加载以前保存的版本。
见:
https://developers.google.com/apps-script/api/reference/rest/v1/projects/getContent

可以指定版本号。如果没有指定版本号,则返回头部版本。

如果您想使用 Apps Script 中的 Apps Script API,则需要使用 UrlFetchApp.fetch(url)

function getAppsScriptContent() {
  var accessTkn,id,options,projectID,response,url;

  id = "";//Enter the project id here

  url = "https://script.googleapis.com/v1/projects/{scriptId}/content";
  url = url.replace("{scriptId}", id);

  if (versionNumber) {
    url = url + '?versionNumber=' + versionNumber;
  }

  accessTkn = ScriptApp.getOAuthToken();

  options = {};
  options.muteHttpExceptions = true;//Make sure this is always set
  options.method = "GET";
  
  options.headers = {
      'Authorization': 'Bearer ' +  accessTkn
    }

  response = UrlFetchApp.fetch(url,options);

  if (!response || response .getResponseCode() !== 200) {   
      //Your error handling
  }

  fileContent = response.getContentText();
  
  try{
    fileContent = JSON.parse(fileContent);
    files = fileContent.files;
  }catch(e){
    
    //Error handling
  }

}