【发布时间】:2016-01-02 20:16:49
【问题描述】:
我有一个场景,我们的 Visual Studio Online Git 托管解决方案成功完成了持续集成 (CI) 构建,但在本地存在构建错误。
然而,这些 VS.NET 解决方案本地的构建错误与 TypeScript 构建错误是隔离的。我的理解是 TypeScript 构建错误肯定会导致本地构建失败,但不会阻止 CI 构建服务器成功完成。这是因为tsc.exe TypeScript 编译器将简单地将.ts 文件转换为构建服务器上的.js 文件,但此时任何相关的错误都不会被阻塞。该解决方案只关心输出 .js 文件,因此它们在编译后存在并且满足构建服务器。
不过,我对此不是 100% 确定的,希望澄清这是否正确,或者是否有其他原因允许本地 TypeScript 错误不影响构建服务器的结果?
【问题讨论】:
-
以前(成功)构建的构建工件是否仍然存在于构建服务器上?即使当前构建失败,因为先前构建的输出
.js文件在那里,但构建的其余部分可能会成功。如果是这样,您会看到由于预期的代码生成没有发生而导致运行代码的问题。 -
即使他们做了一个 .js 文件也没有构建服务器编译检查,因为它只是一种脚本语言。除非它完全丢失,否则即使 .js 不好,它仍然可以工作。这也是应用程序端口的全新构建,因此在引入 .ts 问题之前不会有任何成功的构建。这意味着 .js 文件已创建。不过你是对的,运行代码肯定会有问题。
标签: git typescript azure-devops