İçeriğe atla

Yazılım

Git'e Yeni Başlayanlar İçin İlk 10 Komut

Projelerinin geçmişini kaydetmek ve hatalarını geri almak için bilmen gereken en temel Git komutları, ne işe yaradıklarıyla birlikte.

Zenka Dijital Ekibi 3 dk okuma

Ana daldan ayrılıp yeniden birleşen dalları gösteren Git dal şeması

Bir projede çalışırken "keşke dünkü hâline geri dönebilsem" dediğin oldu mu? Git tam olarak bunun için var: Projendeki her değişikliğin kaydını tutar, istediğin ana geri dönmeni ve başkalarıyla aynı proje üzerinde düzenli çalışmanı sağlar. Bu yazıda başlamak için gereken 10 temel komutu öğreneceksin.

Başlamadan önce: Git'i git-scm.com adresinden ücretsiz indirip kurabilirsin. Komutları Windows'ta "Git Bash" ya da VS Code'un terminalinde (üst menüden Terminal → New Terminal) yazabilirsin.

1. git config: Kendini tanıt

Git, her kaydın kim tarafından yapıldığını yazar. Bu ayarı bilgisayarında sadece bir kez yaparsın:

git config --global user.name "Adın Soyadın"
git config --global user.email "eposta@ornek.com"

2. git init: Projeyi Git'e emanet et

Proje klasörünün içindeyken bu komut, o klasörde Git'i başlatır:

git init

Klasörde gizli bir .git klasörü oluşur. Projenin bütün geçmişi orada tutulur, ona elle dokunma.

3. git status: Durum ne?

En sık kullanacağın komut budur. Hangi dosyaların değiştiğini ve hangilerinin kayda hazır olduğunu gösterir:

git status

4. git add: Kayda hazırla

Değişiklikleri kaydetmeden önce "bunları kaydedeceğim" diye işaretlersin. Buna sahneye almak (staging) denir:

git add index.html     # Tek bir dosya
git add .              # Klasördeki bütün değişiklikler

5. git commit: Kaydet

Sahnedeki değişiklikleri, ne yaptığını anlatan bir mesajla kalıcı olarak kaydeder. Her commit, projenin o anki fotoğrafı gibidir:

git commit -m "Ana sayfaya bülten kutusu eklendi"

İyi bir mesaj kısa ve açıklayıcıdır. "düzeltme" yerine "Menüdeki bağlantı hatası düzeltildi" yazmak, aylar sonra geçmişe baktığında hayat kurtarır.

6. git log: Geçmişe bak

git log --oneline

Bütün kayıtları en yeniden eskiye, her biri tek satır olacak şekilde listeler. Baştaki kısa kod (ör. a1b2c3d), o kaydın kimliğidir.

7. git diff: Neyi değiştirdim?

Henüz kaydetmediğin değişiklikleri satır satır gösterir. Eklenen satırlar +, silinenler - ile işaretlenir:

git diff

8. git switch -c: Yeni bir dal aç

Dal (branch), ana projeyi bozmadan yeni bir şey denemek için açtığın paralel bir çalışma alanıdır:

git switch -c koyu-tema     # "koyu-tema" adında yeni dal aç ve ona geç
git switch main             # Ana dala geri dön

Eski kaynaklarda aynı iş için git checkout -b komutunu görebilirsin. İkisi de çalışır, switch daha yeni ve anlaşılır olanıdır.

9. git merge: Dalları birleştir

Denemen başarılı olduysa, ana dala geçip yeni dalı onunla birleştirirsin:

git switch main
git merge koyu-tema

10. git push ve git pull: Buluta gönder, buluttan al

Projeni GitHub gibi bir siteye bağladıysan, kayıtlarını oraya gönderir ya da oradaki yenilikleri bilgisayarına çekersin:

git push     # Bilgisayarımdaki kayıtları GitHub'a gönder
git pull     # GitHub'daki yenilikleri bilgisayarıma al

Başka birinin projesini bilgisayarına indirmek için de git clone ve ardından projenin adresini yazarsın.

Günlük çalışma döngüsü

İlk başta bu kadar komut göz korkutabilir, ama günlük kullanımın çoğu şu dört adımdan ibarettir:

  1. Dosyalarında değişiklik yap.
  2. git status ile neyin değiştiğine bak.
  3. git add . ile kayda hazırla.
  4. git commit -m "..." ile kaydet.

İpucu: Git'e dahil etmek istemediğin dosyaları (ör. şifre içeren ayar dosyaları) proje klasörüne .gitignore adında bir dosya oluşturup içine yazarak hariç tutabilirsin.