ARAÇLAR13m READ20 Haziran 2026

GitHub Nedir, Ne İşe Yarar? Repository, Branch ve Pull Request Rehberi

GitHub kavramlarını sade ama profesyonel şekilde öğren: repository, branch, commit, pull request, issue, README ve açık kaynak iş akışı.

GitHub Nedir, Ne İşe Yarar?

GitHub, yazılımcıların kodlarını sakladığı, versiyonladığı, paylaştığı ve ekip halinde geliştirdiği bir platformdur. Git adlı versiyon kontrol sisteminin üzerine kuruludur. Git kod geçmişini yönetir; GitHub ise bu geçmişi bulutta saklar, ekip çalışmasını ve proje yönetimini kolaylaştırır.

Kısa cevap: GitHub, yazılım projeleri için kod deposu, iş birliği alanı ve portfolyo platformudur.

Git komutlarını baştan sona öğrenmek istersen Git ve GitHub Kullanımı rehberiyle bunu pekiştirebilirsin.

Git ve GitHub Aynı Şey Mi?

Hayır. Bu iki kavram sık karıştırılır.

KavramGörevi
GitKod geçmişini yerel bilgisayarda takip eder
GitHubGit depolarını bulutta barındırır ve ekip çalışması sağlar

Git olmadan GitHub'ın temel mantığı eksik kalır. GitHub olmadan da Git kullanabilirsin, fakat ekip çalışması, paylaşım ve açık kaynak katkısı daha zor olur.

Repository Nedir?

Repository, bir yazılım projesinin kod deposudur. İçinde kaynak kodlar, dokümantasyon, konfigürasyon dosyaları, testler ve proje geçmişi bulunur.

Bir repository genelde şunları içerir:

  • Kaynak kod dosyaları
  • README dosyası
  • Lisans bilgisi
  • Test dosyaları
  • Paket dosyaları
  • CI/CD ayarları
  • Issue ve pull request geçmişi

İyi bir repository, projeyi ilk kez gören birinin ne yaptığını ve nasıl çalıştırılacağını anlayabileceği kadar düzenlidir.

Commit Nedir?

Commit, kod geçmişinde alınan kayıt noktasıdır. Her commit, projede yapılan değişiklikleri ve açıklamasını içerir.

İyi commit mesajı örnekleri:

// BASH //
git commit -m "arama formu icin bos sonuc durumunu ekle"
git commit -m "kullanici kaydi validasyonlarini guclendir"
git commit -m "makale kartlarinda mobil tasma sorununu duzelt"

Kötü commit mesajları:

// BASH //
git commit -m "update"
git commit -m "fix"
git commit -m "son hali"

Commit mesajı, gelecekte projeyi inceleyen kişiye ne değiştiğini anlatmalıdır.

Branch Nedir?

Branch, ana kodu bozmadan yeni özellik veya düzeltme geliştirmek için kullanılan çalışma dalıdır.

Örnek:

// BASH //
git checkout -b feature/seo-makaleleri

Bu komut yeni bir dal açar. Böylece ana main dalına dokunmadan SEO makaleleri üzerinde çalışabilirsin.

Yaygın branch isimleri:

  • feature/kullanici-profili
  • fix/mobil-menu-tasma
  • chore/paket-guncelleme
  • docs/readme-duzenleme

Pull Request Nedir?

Pull Request, bir branchte yapılan değişiklikleri ana dala almak için açılan inceleme isteğidir. Ekip projelerinde kod genellikle doğrudan main dalına gönderilmez. Önce pull request açılır, sonra kod incelenir, testler çalışır ve onaydan sonra merge edilir.

Pull request şunları sağlar:

  • Kod incelemesi
  • Değişiklik özeti
  • Tartışma alanı
  • Otomatik test kontrolü
  • Güvenli merge süreci

Profesyonel ekiplerde pull request kültürü çok önemlidir.

Issue Nedir?

Issue, projedeki hata, görev, öneri veya geliştirme talebini takip etmek için kullanılır.

Örnek issue başlıkları:

  • Mobilde makale başlığı taşıyor
  • Admin panelde tema seçimi açık modda arka planı güncellemiyor
  • Sitemap yeni makaleleri listelemiyor
  • README kurulum adımları eksik

Issue, işin kaybolmasını engeller ve proje geçmişini daha anlaşılır yapar.

README Neden Önemli?

README, projenin vitrinidir. GitHub profilini inceleyen biri genelde önce README dosyasına bakar.

İyi README içeriği:

  • Proje ne yapar?
  • Hangi teknolojiler kullanıldı?
  • Kurulum nasıl yapılır?
  • Ortam değişkenleri nelerdir?
  • Komutlar nelerdir?
  • Ekran görüntüsü veya demo var mı?
  • Bilinen eksikler nelerdir?

Basit README iskeleti:

// MD //
# Proje Adı
 
Kısa proje açıklaması.
 
## Teknolojiler
 
- Next.js
- TypeScript
- PostgreSQL
 
## Kurulum
 
```bash
npm install
npm run dev
```
 
## Özellikler
 
- Kullanıcı girişi
- İçerik listeleme
- Arama

GitHub Portfolyo Olarak Nasıl Kullanılır?

İş veya staj başvurularında GitHub profili güçlü bir sinyal olabilir. Ancak boş repository, tek commit ve açıklamasız proje zayıf görünür.

Güçlü GitHub profili için:

  • Profil README dosyası oluştur.
  • En iyi projelerini pinle.
  • Projelerde açıklayıcı README kullan.
  • Düzenli commit at.
  • Kodları klasörlere ayır.
  • Demo linki ekle.
  • Gereksiz dosyaları .gitignore ile dışarıda bırak.
  • Açık kaynak projeleri incele.

GitHub, sadece kod deposu değil, öğrenme geçmişinin izidir.

Yeni Başlayanlar İçin GitHub İş Akışı

Basit bir proje için temel akış:

// BASH //
git clone https://github.com/kullanici/proje.git
cd proje
npm install
git checkout -b feature/yeni-ozellik
git add .
git commit -m "yeni ozellik eklendi"
git push origin feature/yeni-ozellik

Ardından GitHub üzerinden pull request açılır.

GitHub Güvenliği

GitHub'a asla gizli anahtar, veritabanı şifresi veya API token göndermemelisin.

Dikkat etmen gerekenler:

  • .env dosyasını commit etme.
  • .env.example dosyasıyla örnek değişkenleri göster.
  • GitHub secret scanning uyarılarını ciddiye al.
  • Public repository içinde kişisel token bırakma.
  • Yetki verdiğin uygulamaları düzenli kontrol et.
  • 2FA kullan.

Yanlışlıkla secret commit ettiysen sadece dosyayı silmek yetmez; ilgili anahtarı iptal edip yenilemen gerekir.

GitHub Öğrenmek İçin Mini Plan

GünKonu
1Git kurulumu ve repository oluşturma
2commit, status, log
3branch ve merge
4GitHub remote ve push
5README ve .gitignore
6pull request
7küçük proje yayınlama

Bu planı tamamladığında GitHub'ı profesyonel düzeyde değil ama günlük geliştirme için yeterli seviyede kullanmaya başlarsın.

Devam Etmek İçin Önerilen İçerikler

Sık Sorulan Sorular

GitHub ücretsiz mi?

Evet. GitHub ücretsiz planla public ve private repository oluşturmayı destekler. Daha gelişmiş ekip ve kurumsal özellikler için ücretli planlar bulunur.

GitHub bilmeden işe girilir mi?

Bazı pozisyonlarda mümkün olabilir, fakat modern yazılım ekiplerinde Git ve GitHub bilgisi temel beklentidir. En azından branch, commit, pull request ve conflict mantığını bilmek gerekir.

GitHub profilim boşsa ne yapmalıyım?

Küçük ama tamamlanmış projeler ekle. Her projeye README yaz, düzenli commit at ve en iyi 3 projeni profilinde öne çıkar.