Modül 2 · Repository yönetimi · ⏱ 12 dakika

Repository oluşturma ve template repo'lar

Creating repositories and template repositories

Bu derste neler öğreneceksin

  • GitHub'da yeni repo oluşturmanın tüm seçeneklerini bilmek
  • Template repository nedir, nasıl oluşturulur ve kullanılır?
  • Repo görünürlüğünü (public, private, internal) anlamak
  • Organizasyon reposu ile kişisel reponun farkını açıklamak

GitHub’da repository oluşturmak basit görünür ama GH-900 sınavı oluşturma seçeneklerinin detaylarını sorar: template repo’lar, görünürlük ayarları, initialization seçenekleri ve organizasyon repo’ları.

Yeni repo oluşturma

Web UI’da ”+” → New repository veya CLI ile:

gh repo create my-project --public --add-readme

Oluşturma ekranındaki seçenekler:

SeçenekAçıklama
OwnerKişisel hesap veya organizasyon
Repository nameURL’de görünür, küçük harf önerilir
VisibilityPublic / Private / Internal
Initialize with READMEBoş olmayan repo başlatır
Add .gitignoreDil bazlı template
Choose a licenseMIT, Apache, GPL, vb.

Initialization önemli mi?

Eğer Initialize this repository with a README seçilirse, repo zaten bir commit içerir ve doğrudan clone edilebilir. Eğer seçilmezse, boş repo oluşur ve yerel projeni push etmen gerekir.

Repository template nedir?

Template repository, diğer repolar için başlangıç noktası olarak kullanılmak üzere işaretlenmiş repodur. Kopyaladığında:

  • Tüm dosyalar kopyalanır (commit geçmişi olmadan — fresh start)
  • .github/workflows, README.md, başlangıç kodu gelir
  • Tek commit ile temiz başlangıç

Template repo oluşturmak için: repo Settings → General → Template repository kutusunu işaretle.

Template’ten yeni repo oluşturmak için: template repo sayfasında “Use this template” butonu.

# CLI ile template'ten repo oluştur
gh repo create my-new-project --template owner/template-repo --public

Template vs. Fork farkı: Fork, kaynak repoyla bağlantılı kalır (upstream merge edilebilir). Template, bağlantısız bağımsız bir repo oluşturur.

Görünürlük tipleri

GörünürlükKimler görebilir?Ne zaman kullanılır?
PublicHerkes (GitHub hesabı olmadan da)Açık kaynak, portfolio
PrivateSadece davet edilenlerÖzel projeler
InternalOrganizasyon üyeleriŞirket içi, enterprise

Internal görünürlük yalnızca GitHub Enterprise organizasyonlarında mevcuttur. Bütün kurumsal çalışanlar görebilsin ama dışarıya kapalı olsun istendiğinde kullanılır.

Organizasyon reposu vs. kişisel repo

ÖzellikKişisel repoOrganizasyon reposu
OwnerBireysel kullanıcıOrganizasyon hesabı
TeamsYokVar (granular erişim)
BillingBireysel planOrg planı
TransferabilityDiğer kullanıcıya/org’a transfer edilebilirOrg içinde veya dışına
CollaborationCollaborator eklenirTeams + roles

Repo ayarları

Repo oluşturulduktan sonra Settings sekmesinde:

  • Default branch değiştirmek
  • Branch protection rules eklemek
  • Deploy keys ve Secrets yönetmek
  • GitHub Pages etkinleştirmek
  • Topics ve Description düzenlemek

Topics, reponun discover edilmesini sağlar ve sınav topic’lerin nasıl ekleneceğini sorabilir: Settings → General → Topics bölümünden veya web UI üzerinden.

Sınavda dikkat noktaları

  • Template repo ile fork arasındaki fark sıklıkla sorulur
  • Internal görünürlük sadece Enterprise’da var
  • Boş repo ile initialized repo farklı davranır (push için remote set etmek gerekir)
  • Organizasyon içinde repo oluşturmak için gerekli izin: org member veya daha üst rol

Sırada ne var?

Sonraki derste clone, fork ve upstream sync işlemlerini ele alacağız.