PR 檢查清單
此倉庫提供了一個基本的 devcontainer。所有操作都可以直接在此容器中執行,以避免繁瑣的環境安裝。
警告
目前提供的 devcontainer 還不完整。至少 Makefile 中的所有 Docker 化步驟 (make dev, ....) 都無法使用。歡迎貢獻!
通過拉取請求提供代碼時,請檢查以下事項:
網頁檢查
-
npm run lint(使用 ESLint 進行代碼檢查) -
npm run format(使用 Prettier 進行格式化) -
npm run check:svelte(使用 SvelteKit 進行類型檢查) -
npm run check:typescript(檢查 TypeScript) -
npm test(單元測試)
文檔
-
npm run format(使用 Prettier 進行格式化) - 如果您已重命名或移除文檔中的某個頁面,請更新
_redirects文件。
AIO
使用 npm run check:all 可以運行所有的網頁檢查。
伺服器檢查
-
npm run lint(使用 ESLint 進行代碼檢查) -
npm run format(使用 Prettier 進行格式化) -
npm run check(使用tsc進行類型檢查) -
npm test(單元測試)
AIO
使用 npm run check:all 可以運行所有的伺服器檢查。
自動修復
您可以使用 npm run __:fix 來嘗試自動修正一些可能存在的問題,例如 npm run format 和 lint。
移動端檢查
以下命令需在代碼庫的移動應用目錄中執行。
-
make build(使用 build_runner 自動生成文件) -
make analyze(使用 Dart 分析器和 DCM 進行靜態分析) -
make format(使用 Dart 格式化工具進行格式化) -
make test(單元測試)
自動修復
您可以使用 dart fix --apply 和 dcm fix lib 來嘗試自動修正一些可能存在的問題,例如 make analyze。
OpenAPI
每當 immich-openapi-specs.json 文件有更改時,都需要重新生成 OpenAPI 客戶端庫。請注意,不要直接修改此文件,因為它是自動生成的。詳情請參見 OpenAPI。
數據庫遷移
每當 server/src/infra/src/entities 發生更改時,都需要生成數據庫遷移。詳情請參見 數據庫遷移。