到目前為止,我們的 GitHub Pages 網站已經能自動部署。
但這一切的背後,其實是由 GitHub Actions 幫我們完成的自動化流程!
今天我要更深入了解它是怎麼運作,並嘗試自己建立一個簡單的自動化 workflow。
GitHub Actions 是一個可以讓你在 GitHub 上自動執行任務的系統,
例如:
自動測試程式碼、自動部署網站(例如 GitHub Pages)、
自動格式化程式碼、發布版本(Release)。
它的核心概念是「Workflow(工作流程)」,
你只要寫好一個 .yml 檔,它就會在指定的事件(如 push、pull request)觸發時自動執行。
換句話說,它就像一個自動幫你執行任務的小助理 🤖。
而這些任務都寫在一個特殊的檔案中:
.github/workflows/xxxx.yml
Workflow 是一個放在 .github/workflows/ 資料夾裡的 YAML 檔(例如:main.yml)。
裡面寫著:
簡單來說,
Workflow = 自動化的操作指令。
.yml 是一種設定檔語法格式(YAML)。
常見特點:
例如:
name: 測試範例
on: push
jobs:
build:
steps:
- run: echo "Hello"
打開 GitHub → 點上方的 「Actions」 分頁。
可以看到每次我們 push 檔案時,都會觸發一個
「 pages build and deployment 」,
這就是 GitHub Pages 的自動化流程。
意思就是,當我們每次push的時候,
它會自動:
我發現這樣自己完全不用手動部署,真的超級方便XDD
如果想多做一個「測試自動化」的工作流程,
我們也可以在 GitHub Actions 裡新增一個 workflow。
步驟 1:建立新 workflow
點「Actions」→ 左上角按「New workflow」。
點「set up a workflow yourself」。
步驟 2:撰寫內容
接下來我們就可以在.yml裡面,寫下我們想要在觸發時自動執行的內容。
上圖內容包含註解,可供各位邦友們參考參考!
步驟 3:提交檔案
點右上角的 Commit Changes。
步驟 4:查看執行結果
回到「Actions」頁面,幾秒後你會看到:
Run simple test ,
裡面如果有看到你剛剛新增的.yml檔,且有綠色勾勾,
就表示 workflow 執行成功!
相信很多邦友和我有相同的疑問,
雖然照著步驟自己建立了workflow,
但還是不知道建立這個要幹嘛XDDD
所以為什麼要「自己新增 workflow」?
Workflow(工作流程) 是 GitHub Actions 的核心,
它告訴 GitHub「在什麼時候要自動執行什麼事情」。
當你第一次開啟 GitHub Actions 時,系統會讓你:
選擇一個現成模板(例如「Node.js build」、「Python test」),
或者自己新增 workflow 檔案。
而選擇「自己新增」的好處是:
模板可能會有限制,因此許多人喜歡自己新建workflow,
這樣就可以完全按照自己的思路去執行。
今天我第一次看懂 GitHub Actions 背後的結構。
原來我之前的 Pages 自動部署,就是一個完整的 workflow。
這讓我更理解了:
「每一次自動化背後,其實都是程式與設定檔的合作。」