6 dk okuma

Git, GitHub Nedir? Nasıl Kullanılır?

1 Ağustos 202101:17

Git & GitHub Nedir?

Git, bir veri dosyasının değişimlerini izlemek ve kontrol etmek için kullanılan bir dağıtık sürüm kontrol sistemidir. GitHub ise, Git üzerine kurulu bir web tabanlı hizmettir ve kullanıcıların kodlarını paylaştıkları ve geliştirdikleri bir ortam sağlar.

Git, yerel olarak bilgisayarınızda kodunuzu depolamanıza ve yönetmenize olanak tanır, ancak GitHub sayesinde bu kodlarınızı dünya genelindeki diğer kullanıcılarla paylaşabilirsiniz. Bu sayede kolayca ekip çalışması yapabilir ve projelerinizi daha da geliştirebilirsiniz.

Git ve GitHub arasındaki en belirgin fark, Git'in yerel bir sürüm kontrol sistemi olması ve GitHub'ın ise bu sistemin web tabanlı bir hizmeti olmasıdır. Git, yalnızca bilgisayarınızda kodlarınızı yönetmenize yardımcı olurken, GitHub ise bu kodlarınızı lokasyon bağımsız olarak diğer kullanıcılarla paylaşmanıza ve en önemlisi ekip çalışması yapmanıza olanak tanır.

Bu seri için devam yazım olan Git'te Pull Request Nasıl Yapılır: Adım Adım PR yazıma da göz atmanızı öneririm.

Git Kurulumu

Git'i indirmek için, resmi Git web sayfasına gidin (veya buraya tıklayın) ve işletim sisteminize uygun bağlantı üzerinden indirin. İndirme işlemini tamamladıktan sonra, yükleme dosyasını çalıştırın ve kurulum sihirbazını izleyin.

Kurulum tamamlandıktan sonra, Git'i yapılandırmak için aşağıdaki komutları kullanabilirsiniz.

bash
1git config --global user.name "Adınız Soyadınız"
2git config --global user.email "email@adresiniz.com"

Yukarıdaki komutları çalıştırdığınızda, bu kullanıcı adı ve mail adresi tüm Git projelerinizde kullanılır hale gelecektir.

GitHub Nedir?

GitHub, Git depolama ve yönetim sistemini kullanan ve açık kaynaklı projelerin yönetimini hedefleyen bir web platformudur. Git ile yazılmış kodlarınızı depolayabilir, paylaşabilir ve diğer geliştiricilerle birlikte çalışabilirsiniz. GitHub ayrıca, kodunuzu inceleyebilme, hataları tespit etme ve düzeltme gibi işlemleri de destekler.

GitHub, açık kaynaklı projeler için özellikle popülerdir, ancak kapalı kaynaklı projeler için de kullanılabilir. Özel depolama alanı ve özel projeler için ücretli abonelikler sunar. GitHub, birçok geliştirici tarafından kullanılan ve birçok projenin yönetiminde kullanılan bir platformdur.

Git Komut Rehberi

Git kurulumunu tamamladıktan sonra artık GitHub kullanmaya da başlayabiliriz. GitHub'ın resmi Training GitHub dokümanı başlangıç için iyi bir seçim olur.

Ek olarak, konu komutlar üzerinde çalışma olduğu zaman, pratik yapmak için eşsiz bir araç mevcut. Git Explorer bağlantısına giderek repo "clone"lamayı, "commit"lemeyi ve çok daha fazlası hakkında kullanım örneklerini kolayca edinebilirsiniz.

GitHub'da en sık kullanılan komutlardan bazıları:

1. git clone

Bu komut, bir repositorydeki projeyi kopyalar. Yani, projenin tamamını veya belirli bir branchini (dalını) indirmenizi sağlar.

bash
1git clone https://github.com/kullanici-adi/proje-adi.git

Bu örnekte, "https://github.com/kullanici-adi/proje-adi.git" adresindeki projeyi yerel makinenize klonlamak için git clone komutunu kullanıyoruz.

2. git pull

Bu komut, repodaki en son değişiklikleri almanızı sağlar. Yani, diğer kullanıcıların yaptığı güncellemeleri yerel kopyanıza getirir.

bash
1git pull origin main

Bu örnekte, uzak depodaki "main" branch'deki en son değişiklikleri almak için git pull komutunu kullanıyoruz.

3. git push

Bu komut, yerelde yaptığınız değişiklikleri repoya göndermenizi sağlar. Yani, kendi çalışmalarınızı diğer kullanıcılarla paylaşabilirsiniz.

bash
1git push -u origin main

Bu örnekte, yereldeki değişiklikleri uzak depodaki "main" branchine göndermek için git push komutunu kullanıyoruz.

4. git add

Bu komut, değişiklikleri takip etmek istediğiniz dosyaları "staging area" olarak adlandırılan bir alana eklemenizi sağlar. Yani, Git'e hangi dosyaların takip edileceğini söylersiniz.

bash
1git add dosya.js

Bu örnekte, "dosya-adi.js" adlı dosyayı değişiklikleri takip etmek için git add komutunu kullanıyoruz.

Tüm değişiklikleri eklemek için:

bash
1git add .

5. git commit

Bu komut, "staging area"da bulunan değişiklikleri yerel depoya kaydeder. Yani, dosyaların belirli bir anlık görünümünü saklar. Push işleminden bir önceki adımdır.

bash
1git commit -m "Değişiklik notu"

Bu örnekte, yapılan değişiklikleri "Değişiklik notu" başlığıyla yerel depoya kaydetmek için git commit komutunu kullanıyoruz.

6. git branch

Projedeki mevcut branchleri (dalları) listelemek veya yeni bir branch oluşturmak için kullanılır.

bash
1git branch yeni-branch

Bu örnekte, "yeni-branch" adında yeni bir branch oluşturmak için git branch komutunu kullanıyoruz.

7. git checkout

Bu komut, farklı bir branch'e geçmek veya mevcut dosyanın farklı bir sürümüne geçmek için kullanılır.

bash
1git checkout yeni-branch

Bu örnekte, "yeni-branch" adlı branch'e geçmek için git checkout komutunu kullanıyoruz.

Ana branch'ten yeni bir branch oluşturmak, yani ana branch'i birebir yeni branchte kopyalamak:

bash
1git checkout -b yeni-branch-adı ana-branch-adı

Burada, git checkout -b komutu, yeni bir branch oluştururken aynı zamanda o branch'e geçiş yapmanızı sağlar. yeni-branch ise oluşturmak istediğiniz yeni branch'in ismidir.

8. git merge

Bu komut, farklı branch'lerdeki değişiklikleri birleştirmenizi sağlar. Yani, farklı çalışma hatlarını tek bir hat üzerinde birleştirir.

bash
1git merge ana-branch yeni-branch

Bu örnekte, "ana-branch" ve "yeni-branch" branchlerini (dallarını) değişiklikleri birleştirmek için git merge komutunu kullanıyoruz.

Kısaltmalar (flag) Ne Anlama Geliyor?

-u (veya --update): Bu flag, git push komutu ile kullanılır ve uzak sunucuya yerel branch'teki değişiklikleri gönderirken aynı adı taşıyan bir branch olup olmadığını kontrol eder. Eğer aynı adı taşıyan bir başka branch bulunursa, yerel branch ile onu ilişkilendirir (tracking) ve sonraki push işlemlerinde hedef branch olarak otomatik olarak bu uzak branch'i kullanır.

-m (veya --message): Bu flag, git commit komutu ile kullanılır ve bir commit mesajı eklemek için kullanılır. Mesajı komut satırında belirterek, direkt olarak commit işlemi gerçekleştirilir. Örneğin: git commit -m "Değişiklikler eklendi".

-b (veya --branch): Bu flag, git checkout veya git branch komutları ile kullanılır ve bir branch oluştururken veya bir branch'a geçerken kullanılır. Örneğin: git checkout -b yeni-branch komutu, hem yeni bir branch oluşturur hem de o branch'e geçiş yapar.

-d (veya --delete): Bu flag, git branch komutu ile kullanılır ve bir branch'i siler. Örneğin: git branch -d silinecek-branch komutu, silincek-branch adındaki branch'i siler.

-f (veya --force): Bu flag, git push komutu ile kullanılır ve uzak sunucuya yerel branch'teki değişiklikleri zorla (force) gönderir. Özellikle, geçmişte yapılmış bir push işleminin tersine çevrilmesi gerektiğinde veya zorla güncelleme yapılması gerektiğinde kullanılır. Ancak dikkatli kullanılmalıdır, çünkü uzak sunucuda yapılan değişikliklerin üzerine yazılabilir ve veri kaybına neden olabilir.

Pull Request Nedir?

Pull request (ya da çekme isteği, kısaca PR), yazılım geliştirme sürecinde ekip içi işbirliğini sağlayan ve kod incelemelerini kolaylaştıran önemli bir araçtır. Sadece ekip içi değil, açık kaynaklı projelerde ekip dışından katkı sağlamak isteyen geliştiricilerin de kullandığı bir araçtır.

Genellikle Git gibi versiyon kontrol sistemlerinde kullanılan Pull Request, yeni bir kod değişikliğinin incelenmesi ve onaylanması sürecini yönetir. Bu şekilde projeye katkı sağlamak isteyen ekip üyelerinin ya da geliştiricilerin, projenin sahibine değişiklikleri önerir ve projenin sahibi bu değişiklikleri projeye dahil etmek veya reddetmek için karar verir.

Pull Request ile ilgili daha detaylı incelemek için, Git'te Pull Request Nasıl Yapılır: Adım Adım PR yazıma göz atmanızı öneririm.

Sonuç

Taban olarak dağıtık bir sistem olan Git, yazılım geliştirme süreçlerinde oldukça kullanışlı bir araçtır. İşbirliği içinde çalışan geliştiriciler, Git sayesinde aynı projeyi kolayca düzenleyebilir, değişiklikleri takip edebilir ve geri alabilirler. Ayrıca, Git'in merkezi olmayan yapısı sayesinde projelerin kaybolması veya bozulması gibi riskler en aza indirgenir.

Git'in kullanımı, öğrenmesi kolay ve uygulaması basittir. Git komutları, kısa ve anlaşılır olması nedeniyle hızlı bir şekilde öğrenilebilir. Bu sayede, özellikle yazılım geliştirme süreçlerinde proje yönetimini kolaylaştırmak ve işbirliğini artırmak isteyen geliştiriciler, Git'i tercih ederler.

Sonuç olarak, Git yazılım geliştirme süreçlerinde kullanışlı ve etkili bir araçtır. Hem bireysel kullanıcılar hem de işletmeler tarafından yaygın bir şekilde kullanılmaktadır. Git'in kolay öğrenilebilir olması, kısa ve anlaşılır komutları ve merkezi olmayan yapısı, geliştiricilerin işbirliği yapmalarını kolaylaştırmaktadır. Bu nedenle, Git, yazılım geliştirme süreçlerinde vazgeçilmez bir araçtır.

Bu seri için devam yazım olan Git'te Pull Request Nasıl Yapılır: Adım Adım PR yazıma da göz atmanızı öneririm.


Referanslar

Bu yazıyı paylaş

Link kopyalandı!
Mustafa Kürşad Başer

Mustafa Kürşad Başer

Yazılım Mühendisi — Dijital Zanaatkâr

Karmaşık sorunlara zarif çözümler üretmekten keyif alan, tutkulu bir yazılım mühendisi. Kodlamanın ötesinde, teknoloji, sanat ve insan bilincinin kesişim noktalarını keşfetmekle derinden ilgileniyor.

© 2025 Mustafa Kürşad BAŞER. Tüm hakları saklıdır.

Çerez Tercihleri

Size daha iyi bir deneyim sunabilmek için çerezleri kullanıyoruz. Analitik ve reklam amaçlı çerezler hakkında detaylı bilgi için ayarları özelleştirebilirsiniz.