just 不只是 just - a command runner
覺得我們的內容實用嗎? MyApollo 電子報讀者募集中!歡迎訂閱電子報!
just
是一個打造專案專屬指令(project-specific commands)的工具,簡單來說你可以直接認為它就是改良版的 make
指令,兩者語法多有相似之處,也是因為它受到 make
指令的啟發緣故。
所以使用 just
也是建立一個 justfile
, 並在裡面寫指令,例如:
build:
CGO_ENABLED=0 go build -o myprogram main.go
就可以在專案資料夾使用指令:
$ just build
just
與 make
指令有很多個不同,讓它更加簡單、好用,個人總結 6 個令人怦然心動的特點:
- 支援載入 .env 檔案自動載入環境變數,更貼近開發者的實際工作流
- 指令帶入參數的方式比 make 更加簡單
- 錯誤訊息更清楚,方便除錯
- 支援
--list
參數,列出可用的專案指令,更加 developer friendly - 支援 GitHub Actions
- 最重要的是,指令可以用各種語言寫成,例如以下設定是 Python 寫成的專案指令,可以用
just runpy
執行:
runpy:
#!/usr/bin/env python3
print('Hello World')
這個特點等於讓 just
插上不只一對翅膀, shell 不好寫的功能,可以直接交給其他程式語言負責!
以後想寫 makefile
之前,記得還有 just
可以使用!
just is a handy way to save and run project-specific commands