
2 Kasım 2025 | Eniyisunucum

GitLab, yazılım geliştiricilerin kaynak kodlarını yönetmesini, proje süreçlerini takip etmesini ve DevOps otomasyonlarını tek bir platform üzerinden gerçekleştirmesini sağlayan açık kaynaklı bir Git tabanlı sürüm kontrol sistemidir. Özellikle ekip çalışması, sunucu yönetimi ve yazılım geliştirme ortamlarında yaygın olarak kullanılır.
GitLab Nedir?
GitLab, temelinde bir Git deposu yönetim platformudur. Yani bir proje üzerinde çalışan geliştiriciler, kod değişikliklerini sürüm kontrol altında tutabilir, birbirlerinin değişikliklerini izleyebilir ve tüm geliştirme sürecini merkezi bir şekilde yürütebilirler. GitHub’a benzer olsa da, GitLab’ın farkı tamamen entegre CI/CD (Sürekli Entegrasyon ve Sürekli Teslimat) yapısına sahip olmasıdır.
GitLab Ne İşe Yarar?
- Versiyon kontrolü sağlar: Kodun geçmişini izler, hatalı değişiklikleri kolayca geri almanı sağlar.
- CI/CD otomasyonu: Kod push edildiğinde otomatik test, build ve deployment süreçlerini yönetir.
- Takım içi işbirliği: Issue, Merge Request ve Pipeline yapılarıyla ekipler arası iletişimi güçlendirir.
- Güvenlik ve erişim kontrolü: Kullanıcı rolleri, erişim izinleri ve kod incelemeleriyle tam güvenlik sağlar.
GitLab Nasıl Kullanılır?
GitLab’ı kullanmaya başlamak için önce bir GitLab hesabı oluşturmalısın. Ardından yeni bir proje açarak depoyu yerel ortamına klonlayabilirsin:
git clone https://gitlab.com/kullaniciadi/projeadi.git
cd projeadi
git add .
git commit -m "İlk commit"
git push origin main
Böylece GitLab üzerinde kodlarını depolayabilir, değişiklikleri takip edebilir ve takım arkadaşlarınla işbirliği yapabilirsin.
GitLab’ın Temel Özellikleri
- Repository Yönetimi: Git tabanlı kod yönetimi ve sürüm takibi.
- Merge Request: Kod birleşim talepleriyle ekip içinde kod inceleme (code review) süreci.
- CI/CD Pipelines: Test, build, deployment gibi süreçlerin otomasyonu.
- Issue Board: Görev, bug ve taleplerin organize edilmesi.
- Self-Hosting Desteği: Kendi sunucularında GitLab CE kurulumu ile tam kontrol.
GitLab ile GitHub Arasındaki Farklar
| Özellik | GitLab | GitHub |
|---|---|---|
| CI/CD Entegrasyonu | Yerleşik (native) | Üçüncü parti (Actions, Jenkins vb.) |
| Self-Hosting | Var (Community Edition) | Sınırlı |
| Proje Yönetimi | İçinde dahili Issue Board | Ek uygulamalarla |
GitLab’ın Avantajları
- Tek platformda tüm geliştirme döngüsünü yönetebilirsin.
- Open-source yapısıyla kendi altyapına kurulum yapma özgürlüğü sunar.
- Yüksek güvenlik standartlarıyla kod bütünlüğünü korur.
- Kurumsal ekipler için gelişmiş erişim yönetimi sağlar.
GitLab Runner Nedir?
GitLab Runner, CI/CD süreçlerini çalıştıran motor görevi görür. Her push işleminde test veya deployment işlemini yürütür. Linux, macOS, Windows ve Docker üzerinde çalışabilir.
GitLab ile CI/CD Pipeline Oluşturma
Proje dizinine bir .gitlab-ci.yml dosyası ekleyerek pipeline tanımlayabilirsin:
stages:
- build
- deploy
build_job:
stage: build
script:
- npm install
- npm run build
deploy_job:
stage: deploy
script:
- bash deploy.sh
only:
- main
Bu yapı sayesinde GitLab otomatik olarak kodu build eder, testleri çalıştırır ve deploy işlemini gerçekleştirir.
GitLab CE ve GitLab EE Arasındaki Fark
GitLab CE (Community Edition) açık kaynaklıdır ve ücretsizdir. GitLab EE (Enterprise Edition) ise kurumsal kullanıcılar için ek güvenlik, analiz ve destek özellikleri sunar.
Sonuç: GitLab Kimler İçin Uygundur?
GitLab, bireysel geliştiricilerden büyük kurumsal ekiplere kadar herkes için uygundur. Özellikle DevOps kültürünü benimseyen ekipler için vazgeçilmez bir araçtır. Eğer kendi projeni yönetmek, otomatik test/deploy süreçleri oluşturmak ve kod bütünlüğünü korumak istiyorsan, GitLab senin için ideal bir çözümdür.