GitHub Actions: Yazılım süreçlerinizi GitHub Üzerinde Otomatize Edin

  • Konbuyu başlatan Konbuyu başlatan irfo
  • Başlangıç tarihi Başlangıç tarihi

irfo

Moderatör
Katılım
7 Ocak 2026
Mesajlar
290
Tepkime puanı
2
Puanları
18
Geliştiricilerin çoğu için GitHub, sadece kodlarını sakladıkları bir depo (repository) olmanın çok ötesine geçti. GitHub Actions, 2026 yılı itibarıyla modern yazılım dünyasının en popüler CI/CD araçlarından biri haline geldi. Ayrı bir sunucu kurmanıza (Jenkins gibi) gerek kalmadan, doğrudan GitHub üzerinde otomasyonlar oluşturmanıza olanak tanır.

Basitçe ifade etmek gerekirse: "GitHub'da bir olay (push, pull request, issue) gerçekleştiğinde, şu işleri benim için yap" demenizi sağlar.


GitHub Actions’ın Temel Bileşenleri​

Bir otomasyon oluşturmadan önce, bu sistemin lugatını anlamak gerekir:

  • Workflow (İş Akışı): Deponuza eklediğiniz .github/workflows klasörü altındaki YAML dosyalarıdır.
  • Events (Olaylar): İş akışını tetikleyen tetikleyicilerdir (Kod gönderilmesi, birinin 'star' vermesi vb.).
  • Jobs (İşler): Aynı "Runner" (çalıştırıcı) üzerinde koşan bir dizi adımdır.
  • Steps (Adımlar): Bir işin içindeki tekil görevlerdir (Komut çalıştırmak veya bir "Action" kullanmak).
  • Actions: Topluluk tarafından yazılmış, tekrar kullanılabilen paketlenmiş scriptlerdir.

Neden GitHub Actions Kullanmalısınız?​

  1. Entegrasyon: Kodunuz neresindeyse, otomasyonunuz da oradadır. Ayrı bir platforma giriş yapmanız gerekmez.
  2. Marketplace: Binlerce hazır "Action" (Docker imajı yükleme, AWS'ye bağlanma, Slack bildirimi gönderme vb.) elinizin altındadır.
  3. Ücretsiz Katman: Kamu projeleri (Open Source) için tamamen ücretsizdir, özel projeler için ise oldukça cömert bir ücretsiz dakikası vardır.
  4. Matris Derlemeleri: Aynı anda hem Linux, hem macOS hem de Windows üzerinde testler koşturabilirsiniz.

İlk Workflow Dosyanızı Oluşturun​

GitHub Actions kullanmak için projenizin kök dizininde şu yolu izleyin: .github/workflows/main.yml.

İşte bir web uygulaması veya XenForo eklentisi geliştirenler için kodun PHP syntax hatalarını kontrol eden temel bir CI (Sürekli Entegrasyon) örneği:

# .github/workflows/main.yml
name: PHP_Syntax_Kontrolu

# Hangi olaylarda çalışsın?
on:
push:
branches: [ "main", "dev" ]
pull_request:
branches: [ "main" ]

jobs:
test_et:
# İşin çalışacağı işletim sistemi
runs-on: ubuntu-latest

steps:
# 1. Adım: Depodaki kodu çek
- name: Kodu_Checkout_Et
uses: actions/checkout@v4

# 2. Adım: PHP ortamını kur
- name: PHP_Hazirla
uses: shivammathur/setup-php@v2
with:
php-version: '8.2'

# 3. Adım: Bağımlılıkları yükle (Eğer composer varsa)
- name: Composer_Guncelle
run: composer install --prefer-dist --no-progress

# 4. Adım: Hata kontrolü yap
- name: Lint_Kontrolu
run: |
echo "PHP dosyalari kontrol ediliyor..."
find . -name "*.php" -exec php -l {} \;

Actions Marketplace: Tekerleği Yeniden İcat Etmeyin​

GitHub Actions'ın gerçek gücü Marketplace'den gelir. Örneğin, kodunuzu her güncellediğinizde otomatik olarak bir Docker imajı oluşturup Docker Hub'a yüklemek istiyorsunuz. Bunun için yüzlerce satır kod yazmak yerine hazır bir action kullanırsınız:

XenForo Forum Sahipleri İçin Kullanım Senaryosu​

Eğer forumunuz için özel eklentiler geliştiriyorsanız, GitHub Actions sizin "kalite kontrol" uzmanınız olabilir:

  • CSS/JS Minifikasyonu: Siz ana dosyaları güncellediğinizde, Action otomatik olarak bunları küçültüp (minify) yayınlayabilir.
  • FTP/SSH Deploy: Kodunuzu GitHub'a push yaptığınız anda, Action bunu otomatik olarak sunucunuza (VDS/VPS) transfer edebilir.
  • Sürüm Notları: Yeni bir release oluşturduğunuzda, eklentinizin değişim günlüğünü (changelog) otomatik hazırlayabilir.

Sonuç: Geliştirme Sürecini Standartlaştırın​

GitHub Actions, "benim bilgisayarımda çalışıyordu" sorununu ortadan kaldıran en büyük yardımcınızdır. Otomasyon sayesinde hata payınızı azaltır, kendinize yaratıcı işler için daha fazla zaman ayırırsınız. 2026 dünyasında manuel olarak dosya yüklemek veya test koşturmak artık bir seçenek değil, bir zaman kaybıdır.
 
Geri
Üst