我的脚本回购已损坏,显然交叉引用了已保存的副本
my script repo became corrupted, apparently cross referencing a saved copy
我有一个与电子表格相关联的较长脚本(超过 500 行),并保存了一个副本作为备份。某处我对工作脚本所做的更改被忽略了——它将 运行 旧版本。例如,忽略了新的 setValue 语句,Logger.log 方法也是如此。重命名方法有效,尽管以前命名的方法仍然可用。
我通过删除副本解决了这个问题(尽管我尝试删除的一个副本在删除时生成了系统错误)。
最终,我在删除所有脚本副本后关闭Chrome,重新打开发现已删除的脚本副本不再列出,并且现在正在识别最近对工作脚本的更改。
很明显,存储库已损坏。这不是一个好兆头。
有人遇到过这种情况吗?这个环境不稳定吗?我有失去项目的危险吗?
我没有经历过这种确切的情况,但我经历过类似的怪事,我将其归因于 Google 架构的分布式特性。
我认为您不会有丢失代码的风险,多年来我每天在该平台上工作,并且在许多帐户和域中使用数十个脚本,我当然从来没有丢失过任何东西。
我不得不使用的最坏情况修复是重新传播sheet并将我的代码和数据移动到新的 sheet 以提供 "fresh start".
我经常遇到的导致此类问题的一种情况是,如果我复制并粘贴现有脚本的大脚本 "over top"。 EG 从 "development" 副本部署到 "live" 副本。在某些情况下,新粘贴的代码无法识别,旧代码会继续 运行,或者我会收到错误消息,提示无法找到函数。
我对此的看法是,您的代码在 运行 时间被编译成某种可执行文件,分发到 Google 的服务器上,在某些情况下,脚本之间的链接您在脚本编辑器中看到该可执行文件出现故障。但这纯粹是我的猜测。
我有一个与电子表格相关联的较长脚本(超过 500 行),并保存了一个副本作为备份。某处我对工作脚本所做的更改被忽略了——它将 运行 旧版本。例如,忽略了新的 setValue 语句,Logger.log 方法也是如此。重命名方法有效,尽管以前命名的方法仍然可用。
我通过删除副本解决了这个问题(尽管我尝试删除的一个副本在删除时生成了系统错误)。
最终,我在删除所有脚本副本后关闭Chrome,重新打开发现已删除的脚本副本不再列出,并且现在正在识别最近对工作脚本的更改。
很明显,存储库已损坏。这不是一个好兆头。
有人遇到过这种情况吗?这个环境不稳定吗?我有失去项目的危险吗?
我没有经历过这种确切的情况,但我经历过类似的怪事,我将其归因于 Google 架构的分布式特性。
我认为您不会有丢失代码的风险,多年来我每天在该平台上工作,并且在许多帐户和域中使用数十个脚本,我当然从来没有丢失过任何东西。
我不得不使用的最坏情况修复是重新传播sheet并将我的代码和数据移动到新的 sheet 以提供 "fresh start".
我经常遇到的导致此类问题的一种情况是,如果我复制并粘贴现有脚本的大脚本 "over top"。 EG 从 "development" 副本部署到 "live" 副本。在某些情况下,新粘贴的代码无法识别,旧代码会继续 运行,或者我会收到错误消息,提示无法找到函数。
我对此的看法是,您的代码在 运行 时间被编译成某种可执行文件,分发到 Google 的服务器上,在某些情况下,脚本之间的链接您在脚本编辑器中看到该可执行文件出现故障。但这纯粹是我的猜测。