簡體   English   中英

GitHub 操作 - 為什么使用不同的節點版本構建?

[英]GitHub Actions - Why build with different Node versions?

我是 GitHub 操作(以及一般的持續集成)的新手。 我剛剛閱讀Using Node.js with GitHub Actions ,我從Node.js 工作流模板中找到了這個片段:

    strategy:
      matrix:
        node-version: [8.x, 10.x, 12.x]

有人提到

該模板包含一個矩陣策略,可以使用三個 Node.js 版本構建和測試您的代碼:8.x、10.x 和 12.x。 'x' 是一個通配符,與一個版本可用的最新次要版本和補丁版本相匹配。 node-version數組中指定的每個 Node.js 版本都會創建一個運行相同步驟的作業。

我的問題是——為什么要使用不同的 Node 版本進行構建和測試? 為什么不只使用一個版本?

謝謝!

Node.js 版本8、1012Node.js的常用版本。 版本911被認為是實驗性的,因為它們是奇數,因此不會獲得 LTS(長期支持)。 另一方面,版本81012是穩定的。

Firebase 雲函數需要 Node.js 版本810 ,表明版本810仍然被廣泛使用。

Node.js 版本14是幾個月前發布的,但我懷疑人們會在一段時間后修復大部分錯誤時才開始使用它,因此並不完全需要對其進行測試,但如果你願意,可以。


如您所見, Node.js版本8、1012是 Node.js 最廣泛使用的版本,因此,確保您的 Z686155AF75A60A0F6E9D80C1F7EDD3 代碼可以使用您的很多人是個好主意代碼。

如果您想確保完全兼容,您可以使用更多版本的 Node.js 進行測試,但我懷疑您是否需要這樣做,因為 Node.js 通常向后兼容。

如果您想查看當前支持哪些版本的 Node.js,請訪問Node.js 版本頁面。

這涉及到“如何使用不同版本的節點構建和測試?”的重要問題。 例如,我有 package 依賴項,這些依賴項無法使用早期版本的節點(antlr4 就是一個例子)構建,但我仍然需要在舊版本上測試分布式代碼。 從目前的情況來看,這似乎是不可能的(例如,使用節點 14.x 構建,並使用節點 12.x 測試構建的代碼)?

(雖然這不是海報的關注點)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM