---
title: Sürekli Yerelleştirme (CI/CD Entegrasyonu) – Uygulama
description: Sürekli yerelleştirme, ürün geliştirme döngüsüne entegre edilen ve yeni/değişen metinlerin düzenli aralıklarla yayına hazırlandığı bir yaklaşımdır.
url: "https://cevirihizmetleri.com.tr/belgeler/surekli-yerellestirme-ci-cd/"
updated: "2026-10-21"
category: Yerelleştirme
---

# Sürekli Yerelleştirme (CI/CD Entegrasyonu) – Uygulama

**Özet:** Sürekli yerelleştirme, ürün geliştirme döngüsüne entegre edilen ve yeni/ değişen metinlerin otomatik olarak çıkarılıp çevrilerek düzenli aralıklarla yayına hazırlandığı bir yaklaşımdır. Bu kılavuz; klasik modele kıyasla farkları, repo → TMS → PR/MR akışını, CI job örneklerini (satır satır), branch/sürüm stratejilerini, otomatik LQA tetikleme ve paketlemeyi ve geriye dönük TM bakımını adım adım açıklar.
 Bağlam: [Yerelleştirme Hizmetleri](https://cevirihizmetleri.com.tr/yerellestirme/)

## 1) Klasik model vs. sürekli yerelleştirme

### 1.1) Klasik model

- Döngü: metinlerin toplanması → çeviri → revizyon → tek seferlik teslim.
- Avantaj: Proje bazlı kontrol; tek seferlik yayınlarda pratik.
- Risk: Sık güncellenen ürünlerde bekleme/kümülatif birikim, piyasa çıkış süresinin uzaması.

### 1.2) Sürekli model

- Döngü: her commit/merge sonrasında otomatik çıkarım → TMS’e yükleme → onaylı çeviriyi geri çekme → build/test/paket.
- Avantaj: Daha kısa pazara çıkış süresi; küçük partilerle düşük hata riski.
- Gereksinim: CI/CD boru hattı, TMS entegrasyonu, ICU/lint ve LQA adımları.

## 2) Mimarinin bileşenleri

- **Repo:** Kaynak kod ve kaynak metinler; i18n çıkarım betikleri.
- **TMS:** Segment eşleştirme, TM/TermBase, iş akışı ve onay durumları.
- **CI runner:** Çıkarım, upload/download, lint, build ve test işlerini koşturur.
- **Ortamlar:** Test/ön üretim/üretim; dil seçici ve sürüm takibi.
- **Güvenlik:** TMS token/anahtarları için gizli değişkenler.

## 3) Repo → TMS → PR/MR akışı (adım adım)

1. Geliştirici yeni/ değişen metinleri push eder.
2. CI, i18n çıkarım betiğini çalıştırır ve kaynak dosyasını oluşturur.
3. Kaynak dosyası TMS’e yüklenir; uygun projede iş akışı başlar.
4. TMS, TM/TermBase eşleşmesi ve çeviri/inceleme adımlarını yürütür.
5. Onaylı çeviriler CI tarafından indirilir; hedef dil dosyaları güncellenir.
6. ICU/lint ve temel UI kontrolleri çalışır; hatalar raporlanır.
7. PR/MR açılır; kod inceleme ile birlikte dil dosyaları gözden geçirilir.
8. Merge sonrasında build/test çalışır; paket ilgili ortama dağıtılır.

Ayrıntılı dilsel ve kozmetik kontroller için bkz. [L10n QA Kontrol Listesi](https://cevirihizmetleri.com.tr/belgeler/l10n-qa-kontrol-listesi/).

## 4) Otomasyon örneği (CI job – satır satır)

### 4.1) GitHub Actions (örnek satırlar)

- `name: i18n-pipeline`
- `on: [push, pull_request]`
- `jobs:`
- `i18n:`
- `runs-on: ubuntu-latest`
- `steps:`
- `- uses: actions/checkout@v4`
- `- name: Extract strings`
- `run: npm run i18n:extract`
- `- name: Upload to TMS`
- `run: npx tms-cli upload --src locale/source.pot --project $TMS_PROJECT --token $TMS_TOKEN`
- `- name: Download approved`
- `run: npx tms-cli download --out locale/ --status approved`
- `- name: ICU lint`
- `run: npx icu-lint "locale/**/*.json"`
- `- name: Build`
- `run: npm run build`

### 4.2) GitLab CI (örnek satırlar)

- `stages: [extract, translate, test, build]`
- `extract:`
- `stage: extract`
- `script:`
- `- npm ci`
- `- npm run i18n:extract`
- `- npx tms-cli upload --src locale/source.pot --project $TMS_PROJECT --token $TMS_TOKEN`
- `translate:`
- `stage: translate`
- `script:`
- `- npx tms-cli download --out locale/ --status approved`
- `test-i18n:`
- `stage: test`
- `script:`
- `- npx icu-lint "locale/**/*.json"`
- `build:`
- `stage: build`
- `script:`
- `- npm run build`

Not: Gerçek TMS/CLI komutları kullandığınız araca göre değişebilir. Örnek satırlar akışı göstermek içindir.

## 5) Branch ve sürüm stratejileri

- **Main/Release dalları:** Üretim için kararlı sürümler; dil dosyaları burada self-canonical ve imzalı yayın süreçlerine uyar.
- **Feature dalları:** Geliştirilen özelliklerle birlikte dil anahtarları; i18n çıkarımı her push’ta tetiklenir.
- **String freeze:** Yayın öncesi kısa dondurma penceresi; yalnızca çeviri/QA kabul edilir.
- **Hotfix:** Kritik metin hataları için küçük yama dalları; TM’e geri yazmayı unutmayın.

## 6) Otomatik LQA tetikleme ve paketleme

- **Ekran görüntüsü toplama:** CI, temel akışlarda otomatik gezintiyle ekran görüntüleri üretir.
- **Pseudo-localization modu:** Belirli job’larda i18n pseudo etkinleştirilir; taşma ve yön hataları görünür.
- **Artifact:** LQA ekran seti ve bulgu şablonu tek paket olarak saklanır/iletilir.
- **Onay kapısı:** Dilsel/kapsam hataları sıfır-kritik seviyesine inmeden deploy job’u çalışmaz.

LQA maddeleri için ayrıntılar: [L10n QA Kontrol Listesi](https://cevirihizmetleri.com.tr/belgeler/l10n-qa-kontrol-listesi/).

## 7) ICU ve doğrulama adımları

- **ICU lint:** `plural`/`select` kalıplarında `other` ve değişken adları doğrulanır.
- **JSON şema:** Dil dosyası şemasıyla anahtar ve tip kontrolü.
- **Gerçekleme testleri:** Kritik ekranlarda yerleştirme hatası, sayısal/tarih biçimleri ve boş/placeholder metinler.
- **Kaynak hijyeni:** Geliştiriciler için ICU kısa kılavuzu: [ICU MessageFormat & Placeholder Kılavuzu](https://cevirihizmetleri.com.tr/belgeler/icu-messageformat-placeholder-kilavuzu/).

## 8) Geriye dönük TM bakımı

- **Tekilleştirme:** Yinelenen segmentlerin TM’de birleştirilmesi; çakışan çevirilerin uyumlandırılması.
- **Alanlara ayırma:** Ürün modülü/özellik bazlı TM segment kümeleri.
- **Kalite işaretleri:** Onaylı/incelemede/retli segment etiketleri; yayın sonrası geri bildirimle güncelleme.
- **Paylaşım:** Kurumla periyodik TMX paylaşımı; NDA ve veri koruma ilkelerine uygun şekilde.

## 9) Ölçüm ve görünürlük

- **Çevrim süresi:** Kaynak değişikliği → onaylı çeviri → üretime geçiş süresi.
- **TM yararlanma oranı:** Yüksek tekrar/benzerlikten gelen kazanımlar.
- **Hata kaçağı:** Yayın sonrası dilsel/kozmetik bulguların trendi.
- **Kapsam:** Hedef dillerin kapsama yüzdesi; eksik anahtarların takibi.

## 10) SSS (mini)

### CI/CD olmadan sürekli yerelleştirme mümkün mü?

Kısmen. Manuel yükleme/indirme ile yapılabilir; ancak süreklilik, kalite ve hız için CI job’ları kritik önemdedir.

### Hangi adımı önce eklemeliyim?

Öncelik: i18n çıkarımı → TMS upload/download → ICU/lint → LQA ekran seti → deploy kapısı.

### Hangi dilleri önce dahil etmeliyim?

En yüksek trafiğe veya gelir potansiyeline sahip 1–3 dil ile başlayıp boru hattı oturduktan sonra genişletin.

## 11) İlgili içerik ve sonraki adım

- [Yazılım ve Uygulama Yerelleştirme Rehberi](https://cevirihizmetleri.com.tr/belgeler/yazilim-uygulama-yerellestirme-rehberi/)
- [L10n QA Kontrol Listesi](https://cevirihizmetleri.com.tr/belgeler/l10n-qa-kontrol-listesi/)
- [Sürekli Yerelleştirme (CI/CD) Nedir? – Blog](https://cevirihizmetleri.com.tr/surekli-yerellestirme-ci-cd-nedir-nasil-kurulur/)

Projeniz için sürekli yerelleştirme hattını birlikte kuralım: [Teklif Al > İletişim (Formu)](https://cevirihizmetleri.com.tr/iletisim/)
