CodeBlanks Logo Icon CodeBlanks

GitHub Actions

React projesi için bir CI iş akışı yazmayı öğrenirsin.

GitHub Actions

GitHub Actions, repo içine .github/workflows/ klasöründe YAML dosyaları koyarak çalışır. Her dosya bir iş akışıdır.

Bir iş akışı jobs içerir; her iş (job) bir runs-on sanal makinesinde çalışır. Adımlar uses ile hazır eylem veya run ile kabuk komutu çalıştırır.

Yaygın eylemler: actions/checkout kodu çeker, actions/setup-node Node kurar.

Önbellek ve hız

Her iş akışı sıfırdan başlar; önbellek olmadan npm ci her seferinde tüm paketleri indirir. actions/setup-node cache: 'npm' seçeneğiyle node_modules önbelleğini yeniden kullanır.

Önbellek, iş akışını dakikalarca hızlandırır ve ücreti düşürür. Anahtar (key) package-lock.json özetine bağlıdır; kilit değişirse önbellek yenilenir. Büyük projelerde bu fark birkaç dakikaya ulaşır ve maliyeti belirgin azaltır.

Uygulama Build iş akışını yaz

Bir derleme iş akışı yaz. name: Build, on: push. setup-node@v4 ile node-version: '20' ve cache: 'npm' ayarla. run: npm ci && npm run build çalıştır.

Başlangıç kodu

App.jsx
# Build iş akışını buraya yaz

Örnek çözüm

App.jsx
name: Build
on: push
jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: actions/setup-node@v4
        with:
          node-version: '20'
          cache: 'npm'
      - run: npm ci && npm run build

Soru ve cevaplar

Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.

1 Boşluğu doldur: Node kur

Soru
- uses: actions/setup-node@v4
  with:
    node-version: '____'
Cevap
- uses: actions/setup-node@v4
  with:
    node-version: '20'

Açıklama: de-version: 20 yaygın bir seçimdir.

2 setup-node'da cache: 'npm' ne yapar?

  • Node sürümünü sabitler
  • npm bağımlılık önbelleğini yeniden kullanır Doğru cevap
  • Test sonuçlarını saklar
  • Kodu derlemeden atlar

Açıklama: Önbellek bağımlılık indirmesini hızlandırır.

3 Actions kavramlarını eşleştir

Kavram Anlamı
checkout Kodu çeker
setup-node Node kurar
cache Önbellek yeniden kullanır
run Kabuk komutu çalıştırır

İleri seviye bölümündeki tüm dersler