Pemeriksaan Tipe di CI: Strategi dan Alat
Jalankan pemeriksaan tipe secara efisien dalam pipeline integrasi berkelanjutan.
Pemeriksaan Tipe di CI: Strategi dan Alat adalah pelajaran TypeScript Academy gratis di CoddyKit. Ini adalah pelajaran 4 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar TypeScript Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus TypeScript Academy mencakup 4 pelajaran total.
Mengapa Melakukan Pemeriksaan Tipe di CI?
Menjalankan pemeriksaan tipe TypeScript di CI mendeteksi kesalahan tipe yang terlewatkan pengembang secara lokal, terutama dalam tim besar ketika perubahan pada satu paket merusak paket lain.
# Simple CI type check step
npx tsc --noEmitBendera --noEmit
tsc --noEmit menjalankan pemeriksa tipe lengkap, tetapi melewati keluaran JavaScript—sempurna untuk pemeriksaan tipe di CI tanpa membuat berkas.
# GitHub Actions step
- name: Type Check
run: npx tsc --noEmitPemeriksaan Tipe Inkremental di CI
Gunakan --incremental dengan cache CI untuk memulihkan berkas .tsbuildinfo, sehingga hanya berkas yang berubah yang diperiksa ulang.
# Cache .tsbuildinfo in CI (GitHub Actions)
- uses: actions/cache@v3
with:
path: .tsbuildinfo
key: tsc-${{ hashFiles('src/**/*.ts') }}Referensi Proyek di CI
Dalam monorepo, tsc --build --noEmit memeriksa tipe semua paket dengan mengikuti dependensi referensi proyek.
# Type-check all project references
npx tsc --build --noEmitPemeriksaan Tipe Hanya pada Bagian yang Terpengaruh dengan Nx
Nx dapat mendeteksi paket mana yang terpengaruh oleh PR dan hanya memeriksa tipe paket tersebut, dengan melewati paket yang tidak berubah.
# Only type-check affected projects
npx nx affected --target=typecheck --base=origin/mainPemeriksaan Tipe dengan Turborepo
Tambahkan skrip typecheck ke setiap paket dan jalankan melalui Turborepo dengan cache serta eksekusi paralel.
// package.json
{ "scripts": { "typecheck": "tsc --noEmit" } }
// turbo.json pipeline
{ "typecheck": { "dependsOn": ["^typecheck"], "outputs": [] } }
// Run:
npx turbo typecheckMenjalankan Pemeriksaan Tipe secara Paralel
Untuk paket yang tidak saling bergantung, jalankan pemeriksaan tipe secara paralel dengan alat seperti concurrently atau npm-run-all.
npx concurrently \
"tsc -p packages/core/tsconfig.json --noEmit" \
"tsc -p packages/ui/tsconfig.json --noEmit"Menggagalkan CI karena Kesalahan Tipe
Pastikan CI gagal pada setiap kesalahan TypeScript dengan memeriksa kode keluar. tsc --noEmit keluar dengan kode 1 ketika terdapat kesalahan.
# CI step — fails if tsc exits 1
- name: Type Check
run: npx tsc --noEmit
# No continue-on-error: true herePemeriksaan Tipe Hanya untuk Pull Request
Gunakan GitHub Actions untuk menjalankan pemeriksaan tipe hanya pada berkas yang berubah dalam PR, sehingga mengurangi waktu CI untuk repositori besar.
# Use ts-affected or custom script to detect changed TS files
# Then run tsc only for affected tsconfig projectsMelaporkan Kesalahan Tipe sebagai Komentar PR
Alat seperti danger-js dapat mengurai keluaran tsc dan memposting kesalahan tipe sebagai komentar tinjauan PR sebaris agar lebih mudah terlihat.
// dangerfile.ts
import { danger, fail } from "danger";
// Parse tsc --noEmit output and report errors inlineRangkuman: Pemeriksaan Tipe CI
Jalankan tsc --noEmit di CI untuk memastikan kebenaran. Gunakan --incremental + cache untuk kecepatan. Dalam monorepo, gunakan tsc --build, Turborepo, atau analisis bagian yang terpengaruh oleh Nx untuk meminimalkan pekerjaan di setiap PR.
Pemeriksaan Singkat
Bendera tsc mana yang memeriksa tipe tanpa menghasilkan berkas keluaran apa pun?
Yang Anda Pelajari
Pemeriksaan tipe CI menggunakan tsc --noEmit untuk memastikan kebenaran tanpa menghasilkan berkas. Gabungkan dengan --incremental, referensi proyek, dan alat cache (Turborepo, Nx) untuk pemeriksaan tipe yang cepat dan dapat diskalakan dalam monorepo besar.
Pertanyaan yang Sering Diajukan
Apakah pelajaran “Pemeriksaan Tipe di CI: Strategi dan Alat” gratis?
Ya — teks lengkap “Pemeriksaan Tipe di CI: Strategi dan Alat” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus TypeScript Academy, upgrade ke CoddyKit PRO. Kursus TypeScript Academy mencakup 4 pelajaran total.
Apa yang akan aku pelajari di “Pemeriksaan Tipe di CI: Strategi dan Alat”?
Jalankan pemeriksaan tipe secara efisien dalam pipeline integrasi berkelanjutan. Kamu berlatih TypeScript Academy dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.
Apakah aku perlu pengalaman untuk memulai TypeScript Academy?
Tidak diperlukan pengalaman sebelumnya. TypeScript Academy di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 4 dari 4.
Berapa lama pelajaran “Pemeriksaan Tipe di CI: Strategi dan Alat” memakan waktu?
Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.
Bisakah aku menulis dan menjalankan kode dalam pelajaran TypeScript Academy ini?
Ya. Setiap pelajaran TypeScript Academy menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.
Semua pelajaran dalam kursus ini
- Membuat Profil Kompilasi TypeScript yang Lambat
- Menghindari Operasi Tipe yang Mahal
- skipLibCheck dan Deklarasi Terisolasi
- Pemeriksaan Tipe di CI: Strategi dan Alat