---
title: Git (Versiyon Kontrol)
slug: git-versiyon-kontrol-f27ff
url: /detay/git-versiyon-kontrol-f27ff
type: article
language: Türkçe
entity:
  primary: Git (Versiyon Kontrol)
  type: article
  disambiguation: Git: Açık kaynaklı, dağıtık versiyon kontrol sistemi. Geliştirici dostu, geniş kullanım alanı.
  categories:
    - name: Yazılım Ve Yapay Zekâ
      slug: yazilim-ve-yapay-zeka
      url: /kategori/yazilim-ve-yapay-zeka
  tags:
    - Git Komutları
    - Branch Merge
    - Git
    - Versiyon Kontrol
    - Yazılım geliştirme
author: Hüsnü Umut Okur
created_at: 2025-07-04T19:57:24.898261+03:00
updated_at: 2025-07-15T19:14:51.373619+03:00
image: https://cdn.t3pedia.org/media/uploads/2025/07/04/Vfr6EiFkTSYWheKg0crVJHOe4M2mFTCX.png
---

# Git (Versiyon Kontrol)

<!-- CONTEXT: KURE Information Cards for "Git (Versiyon Kontrol)" -->

## KURE Information Cards

![ChatGPT Image 8 Tem 2025 01_44_32.png](https://cdn.t3pedia.org/media/uploads/2025/07/07/Do2I9BiXMgqRwQaNbEvqJLT5U6wOS8CL.png)
*Git*

| Field | Value |
|-------|-------|
| Alan(lar) | Versiyonlama Sistemi |
| Kurucu(lar) | Linus Torvalds |
| Hizmetler | Bitbucket,GitLab,GitHub |
| Son Sürüm | 2.50 |
| Yayımlanma Tarihi | 7 Nisan 2005 |

<!-- CONTEXT: Article Content for "Git (Versiyon Kontrol)" -->

## Article Content

**Git**, dosya ve kaynak kodu değişikliklerini izlemeye olanak tanıyan açık kaynaklı, **dağıtık** bir versiyon kontrol sistemidir (Version Control System – VCS). Geliştiriciler, bu sistem sayesinde projelerinde geçmiş değişiklikleri izleyebilir, farklı sürümler arasında geçiş yapabilir ve ekiplerle eş zamanlı olarak iş birliği içinde çalışabilir. [Git](/tr/detay/git-version-control-3782d/llms.txt), 2005 yılında **Linus Torvalds** tarafından, **Linux çekirdeği geliştirme sürecinde** kullanılan önceki kaynak kod yönetim sistemlerinin yetersizliğini gidermek amacıyla geliştirilmiştir. İlk kamuya açık sürüm olan **Git 1.0**, **Aralık 2005**’te yayımlanmıştır.

Torvalds’ın geliştirdiği ilk temel sürümden sonra bakım ve geliştirme süreci, başta **Junio C Hamano** olmak üzere birçok açık kaynak geliştiricinin katkısıyla devam etmiştir. Git, bugün hâlâ aktif olarak geliştirilmekte olup, resmi sürümleri git-scm.com adresinde yayımlanmaktadır.

Git’in son kararlı sürümü (Temmuz 2025 itibarıyla): **Git 2.50.1**’dir. Her yeni sürüm, hata düzeltmeleri, performans iyileştirmeleri ve yeni özellikleri içermektedir.

#### **Git’in Temel Özellikleri**

- **Dağıtık Yapı:** Her kullanıcı kendi bilgisayarında tüm depo geçmişini barındırır. Bu sayede merkezi sunucuya bağlı olmadan da geçmişe erişim ve çalışma mümkündür.
- **Verimli Depolama:** Git, değişiklikleri dosya başına değil, satır bazında saklayarak depolama verimliliği sağlar.
- **Dal ve Birleştirme (Branch & Merge):** Projelerde paralel geliştirme yapılmasını sağlar. Farklı özellikler veya düzeltmeler için dallar (branch) oluşturulabilir.
- **Anlık Görüntü Sistemi (Snapshot):** Git, her kayıt (commit) işlemini bir anlık görüntü (snapshot) olarak saklar. Bu sayede istenilen sürüme kolayca geri dönülebilir.

![Image](https://cdn.kureansiklopedi.com/media/uploads/2025/07/04/xowMjJ7Id7d7rpOfBQjCfu1Wnn4f63Tb.png)
*Git (Bu görsel Yapay Zeka ile oluşturulmuştur.)*

#### **Pazar Payı ve Yaygınlığı**

Git, günümüzde **açık ara en yaygın kullanılan versiyon kontrol sistemi** konumundadır. Stack Overflow 2024 Geliştirici Anketi verilerine göre, [yazılım geliştiricilerin](/tr/detay/software-development-tools-0d7e2/llms.txt) yaklaşık **%93'ü Git kullanmaktadır**.

Git, özellikle aşağıdaki alanlarda yaygındır:

- **Yazılım Geliştirme:** Açık kaynak ve ticari projelerde
- **Akademik Araştırmalar:** Ortak çalışma ve belge versiyonlaması için
- **DevOps:** CI/CD (Sürekli Entegrasyon / Sürekli Teslim) süreçlerinde temel unsur olarak
- **Veri Bilimi:** Jupyter Notebook’lar, kod ve veri sürümleme amacıyla
- **Belgelendirme ve İçerik Yönetimi:** Teknik yazım süreçlerinde belge versiyonlaması

#### **Temel Komutlar**

Git versiyon kontrol sisteminde kullanılan temel komutlar, sürüm takibi ve proje yönetimini etkili biçimde gerçekleştirmeyi sağlar. En sık kullanılan komutlardan bazıları şunlardır:

- **git init**: Yeni bir Git deposu oluşturur. Projeyi versiyon kontrolüne almanın ilk adımıdır.
- **git clone**: Var olan bir uzak (remote) Git deposunu yerel bilgisayara kopyalar.
- **git status**: Çalışma dizinindeki değişiklikleri ve sahnelenmiş (staged) dosyaları gösterir.
- **git add**: Belirtilen dosyayı sahneleme alanına (staging area) ekler.
- **git commit -m&#32;**: Sahnelenmiş değişiklikleri kalıcı olarak versiyon geçmişine kaydeder.
- **git pull**: Uzak depodan son değişiklikleri alır ve yerel depoya entegre eder.
- **git push**: Yerel değişiklikleri uzak depoya gönderir.
- **git branch**: Mevcut dalları listeler veya yeni dal oluşturur.
- **git checkout**: Belirtilen dala geçiş yapar.
- **git merge**: Belirtilen dalın içeriğini mevcut dala birleştirir.
- **git log**: Versiyon geçmişini listeler.

Bu komutlar, hem bireysel geliştiriciler hem de ekipler için Git kullanımını kolaylaştıran temel yapı taşlarıdır.

#### **Kullanım Alanları**

Git, sadece [yazılım geliştirme](/tr/detay/yazilim-gelistirme-araclari-c6c83/llms.txt) projelerinde değil, değişiklik takibinin önemli olduğu pek çok farklı alanda etkin bir şekilde kullanılmaktadır:

- **Yazılım Geliştirme:** Git, bireysel ve ekip bazlı yazılım projelerinde kod değişikliklerini takip etmek, hataları geri almak ve farklı özelliklerin paralel geliştirilmesini sağlamak için kullanılır. Yazılım sektöründe en yaygın kullanılan versiyon kontrol sistemidir.
- **Açık Kaynak Projeler:** Açık kaynaklı yazılımların geliştirilmesi ve topluluk katkılarının yönetilmesinde Git, GitHub, GitLab gibi platformlarla birlikte temel araçtır.
- **Bilimsel Araştırma ve Veri Takibi:** Araştırmacılar Git’i deney sonuçları, veri kümeleri ve tez yazım süreçlerinde belge versiyonlarını kontrol altında tutmak amacıyla kullanırlar. Özellikle tekrarlanabilir bilim açısından önemlidir.
- **Dokümantasyon ve Kitap Yazımı:** Teknik dokümantasyon, eğitim materyali veya kitap yazımı yapan kişiler Git’i metin değişikliklerini yönetmek, içerikleri sürümlemek ve farklı sürümlerle çalışmak için tercih eder.
- **Sistem ve Yapılandırma Yönetimi:** DevOps ekipleri tarafından sunucu yapılandırma dosyalarının ve otomasyon betiklerinin (örneğin Ansible playbook’ları veya Terraform dosyaları) versiyonlanmasında kullanılır.
- **Eğitim Amaçlı Kullanım:** Üniversiteler, kodlama kampları ve çevrimiçi eğitim platformlarında Git, hem öğretim hem de öğrencilerin projelerini izleme aracı olarak kullanılır.

#### **Git'in Öne Çıkan Özellikleri**

Git’in sağladığı avantajlar, sadece yazılım ekiplerine değil, tüm [versiyon kontrolü](/tr/detay/versiyon-kontrol-sistemleri/llms.txt) gerektiren çalışmalara katkılar sunmaktadır:

- **Zaman İçinde Değişiklik Takibi:** Git, her dosya ve proje düzeyindeki değişikliği zaman damgası, kullanıcı bilgisi ve açıklamalarla birlikte kaydeder. Bu özellik, geçmiş revizyonların izlenmesini ve sürüm bazlı analizlerin yapılmasını mümkün kılar.
- **Geri Dönülebilirlik:** Git, belirli bir anda oluşturulan herhangi bir sürüme geri dönülmesini destekler. Bu, hatalı güncellemeler ya da dosya silinmeleri gibi durumlarda sistemi eski ve kararlı hâline döndürmeye olanak tanır.
- **Paralel Geliştirme İmkânı:** Projede birden fazla geliştiricinin aynı anda farklı özellik veya hata düzeltmeleri üzerinde çalışabilmesi için dallanma (branching) ve birleştirme (merging) mekanizmaları sağlar. Bu yapı, proje üzerinde eş zamanlı geliştirmeyi destekler.
- **Ekip Çalışmasını Kolaylaştırır:** Git, ekip içi eş zamanlı çalışmayı teşvik eden bir versiyon kontrol sistemidir. Çakışmaların tespiti ve çözümü için entegre araçlar sunar, bu da kolektif üretkenliği artırır.
- **Dağıtık Mimari Avantajı:** Git, merkezi bir sunucuya bağımlı olmadan çalışabilen bir sistemdir. Her geliştirici, proje geçmişinin tam bir kopyasını yerel sisteminde tutabilir. Bu özellik, çevrimdışı çalışmayı mümkün kılar ve merkezi sistemin devre dışı kalması durumunda veri kaybını önler.
- **Sürüm Yayınlama ve Etiketleme (Tagging):** Git, önemli proje anlarını (örneğin, sürüm yayımları veya ürün lansmanları) tanımlamak için etiketleme işlevi sunar. Bu, sürüm takibi ve sürüm kontrol döngülerinde referans noktalarının oluşturulmasına yardımcı olur.
- **Verimlilik ve Hız:** Git, büyük ve karmaşık projelerde dahi sürüm kontrolü işlemlerini düşük işlem süresiyle gerçekleştirebilir. Sahneleme alanı (staging area) özelliği sayesinde yapılan değişikliklerin seçici biçimde kayda alınması mümkündür.
- **Açık Kaynak ve Ücrestiz Lisans:** Git, GNU Genel Kamu Lisansı (GPL) altında ücretsiz olarak sunulmaktadır. Geniş bir geliştirici topluluğu tarafından sürekli olarak iyileştirilmekte ve küresel ölçekte desteklenmektedir.
- **Güvenlik:** Her değişiklik, SHA-1 hash algoritması ile benzersiz şekilde imzalanır. Bu mekanizma, değişikliklerin bütünlüğünü sağlar ve dış müdahalelere karşı veri güvenliğini artırır.

#### **Git ile Çalışma Ortamları**

Git, terminal/komut satırı üzerinden kullanılabildiği gibi şu görsel arayüzlü uygulamalarla da kullanılabilir:

- GitHub Desktop
- GitKraken
- SourceTree
- Visual Studio Code (Git eklentili)

#### **Git Depo Barındırma Hizmetleri**

Git projeleri genellikle çevrim içi platformlarda barındırılır. En çok tercih edilen hizmetler:

- **GitHub**: GitHub, geliştiricilerin Git sürüm kontrol sistemiyle çalıştıkları projeleri depolamalarını, yönetmelerini ve paylaşmalarını sağlayan bir web tabanlı platformdur. Açık kaynak yazılım projeleriyle geniş bir kullanıcı kitlesine sahiptir. Geliştiriciler, GitHub üzerinde kodlarını barındırabilir, iş birliği yapabilir, hata takibi ve sürüm yönetimi gerçekleştirebilirler. GitHub, 2018 yılında Microsoft tarafından satın alınmıştır.
- **GitLab**: GitLab, Git tabanlı projelerin yönetimini destekleyen, bütünleşik sürekli entegrasyon (CI) ve sürekli teslim (CD) araçlarına sahip bir platformdur. Yazılım geliştirme yaşam döngüsünün tüm aşamalarını tek bir arayüzde sunmayı hedefler. GitLab açık kaynaklıdır ve hem bulut üzerinden hem de şirket içi (on-premise) kurulumlarla kullanılabilir.
- **Bitbucket**: Bitbucket, Atlassian tarafından geliştirilen, Git ve Mercurial sürüm kontrol sistemlerini destekleyen bir kod barındırma hizmetidir. Özellikle küçük ve orta ölçekli ekipler için geliştirilmiş iş birliği araçları ve JIRA entegrasyonu ile dikkat çeker. Bitbucket, özel depo sayısında ücretsiz seçenekler sunarak, kurumsal kullanımda tercih edilen platformlardan biridir.

<!-- CONTEXT: Academic Sources and References for "Git (Versiyon Kontrol)" -->

## Academic Sources and References

1. Chacon, Scott ve Ben Straub. Pro Git – Başlarken: Git Nedir? Erişim: 10 Temmuz 2025. https://git-scm.com/book/en/v2/Getting-Started-What-is-Git%3F
2. Chacon, Scott, and Ben Straub. Git: Versiyon Kontrol Sistemi - Git’in Kısa Tarihçesi. Git SCM. Erişim 10 Temmuz 2025. https://git-scm.com/book/tr/v2/Ba%C5%9Flang%C4%B1%C3%A7-Git%E2%80%99in-K%C4%B1sa-Tarih%C3%A7esi
3. Git SCM. Git Belgeleri – Git Komutları. Erişim: 10 Temmuz 2025. https://git-scm.com/docs/git#\_git\_commands
4. ProGit. “Pro Git Kitabı Türkçe Çeviri.” GitHub. Erişim 6 Temmuz 2025. https://github.com/progit/progit2-tr