GIT Nedir ? GIT Nasıl Kurulur? Temel GIT Komutları Nelerdir?

Burak Keçeci
4 min readJun 13, 2022

--

Günlük hayatta yaptıklarımızı bir yere kaydetmek için günlük tutuyorduk. Peki projelerimizde bunu nasıl başarabiliriz? Yazılım ile ilgileniyorsanız veya versiyon kontrol sistemlerine ilginiz varsa kulağımızın aşina olduğu Git kavramını gelin birlikte inceleyelim.

Versiyon Kontrol Sistemi(Version Control System) Nedir?

Versiyon kontrol sistemi, herhangi bir dosya üzerinde yaptığımız degişiklikleri adım adım kaydetmemizi ve bu değişiklikleri yönetmemizi sağlayan bir sistemdir. GIT, SVN, ClearCase ve Mercurial sürüm kontrol sistemlerine örnek olarak gösterilebilir.

Dağıtık (Distributed) Versiyon Kontrol Sistemi

GIT Nedir?

GIT, dağıtık (distributed) bir versiyon kontrol sistemidir.

GIT, eşzamanlı olarak bir projede farklı takım üyelerinin de çalışmasına olanak sağlar. Örneğin; bir A yazılım projesinde çalışıyorsunuz. Sizin göreviniz bu projede kullanıcının giriş yapmasını sağlayan bir özellik getirmek. Y arkadaşınız ise bu projede kullanıcının resim yüklemesini sağlayan bir özellik geliştirsin. Daha sonra tüm özellikleri projeye ekleyelim. Artık projemiz hazır. Aynı proje üzerinde farklı bölümlerle çalışmanıza olanak sağlayan GIT sayesinde projenizi daha efektif ve kontrollü yönetebilirsiniz.

GIT Kurulumu

GIT kurulumu için https://git-scm.com/downloads adresine gidip ilgili işletim sisteminize ait yönlendirmeleri takip ederek kurulumu gerçekleştirebilirsiniz.

Git Başlangıç Ayarlarını Yapalım:

GIT projedeki değişikleri kimin adına kaydeteceğini sisteme verdiğiniz kullanıcı adı ve şifre ile tanımlar.

$ git config --global user.name "Kullanici Adiniz"

Kullanıcı adınızı çift tırnak(“ “) içerisindeki alana yazabilirsiniz.

$ git config --global user.email "E-Posta Adresiniz"

E-posta adresinizi çift tırnak(“ “) içerisindeki alana yazabilirsiniz.

Yaptığınız ayarların uygulandığını kontrol etmek için aşağıdaki komutu kullanabilirsiniz.

$ git config --list --global

Git Komutları

Gelin birlikte masaüstünde bir kitap oluşturduğumuzu düşünelim. Ve bu kitabın her bir gelişmesini kaydedelim. Oluşturacağımız proje MacOs, Linux ve Windows için aynı komutları içermektedir.

Öncelikle bulunduğumuz yolu tespit edelim.

$ pwd
/c/Users/Burak/

‘ls’ komutunu kullanarak bu dizin altındaki dosyalarımızı görelim.

$ ls

Masaüstüne dizinine geçmek için ‘cd Desktop’ komutunu kullanalım.

$ cd Desktop

Ve şimdi masaüstündeyiz. Dosya oluşturmak için ‘mkdir’ komutu bize yardımcı olacak.

$ mkdir Book

Kitap dosyamızın dizinine girelim.

$ cd Book

git status komutu:

Bu komut sayesinde dosyamızdaki yapılan değişiklerin GIT tarafından takip edilip edilmediğini görmemizi sağlayan ve GIT ile bunları yönlendirmemizi sağlayan komuttur.

Kitap dosyamızın GIT bağlantısı yapıldığının kontrolünü yapmak amacıyla ‘git status’ komutunu çağıralım.

$ git status
fatal: not a git repository (or any of the parent directories): .git

Bize dosyamızın git bağlantısının olmadığını ve bunu yapmamız gerektiğini bildiriyor.

git init komutu:

Bu komut sayesinde dosyamızın bir GIT kontrol sistemi tarafından yönetildiğini belirtiyoruz. Burada dikkat etmemiz gereken bir dosyayı bir kere belirttikten sonra tekrar belirtmemiz problemlere yol açabilir.

Kitap dosyamızın GIT bağlantısını yapalım.

$ git init
Initialized empty Git repository in C:/Users/Burak/Desktop/Book/.git/

Tebrikler Kitap dosyamız artık bir versiyon kontrol sistemine sahip!

Ve şimdi Kitap dosyamızın içine bir önsöz dökümanı ekleyelim.

$ touch preface.txt

Daha sonra projemizdeki oluşan değişikleri tespit etmek için tekrar ‘git status’ komutunu çağıralım.

$ git status
On branch master

No commits yet

Untracked files:
(use "git add <file>..." to include in what will be committed)
preface.txt

nothing added to commit but untracked files present (use "git add" to track)

Bize GIT kontrol sisteminin oluşturduğumuz yeni dökümanı takip etmediğini söylüyor.

git add komutu:

Bu komut sayesinde takip edilmeyen dosyalarımızı GIT kontrol sistemi tarafından takip edilmesini sağlarız.

Kitap dosyamızdaki takip edilmeyen dökümanı GIT tarafından takip edilmesini sağlayalım.

$ git add preface.txt

Önsöz dökümanımız artık takip altında!

Ayrıca takip edilmeyen tüm dosyaları tek tek yazmak yerine hepsini birden takip etmek için ‘git add . ‘ komutunu kullanabiliriz.

$ git add .

git commit komutu:

Bu komut sayesinde dosyamızda yaptığımız değişikleri kayıt altında tutabiliriz.

Kitap dosyamızdaki önsöz kısmını commit edelim. Bu işlemi en çok kullanılan haliyle ‘git commit -m “Commit message” ‘ şeklinde kullabilirken, ‘git commit ‘ komutu ile direkt text editör içinde de düzenleyebiliriz.

$ git commit -m "Preface files created."

git log komutu:

Bu komut oluşturduğumuz yaptığımız tüm değişikleri detaylı bir şekilde görmemizi sağlar.

Oluşan bu dökümanın içine “Bu bir önsözdür.” yazısını ekleyelim. Ve tekrar ‘git status’ komutunu çağıralım.

$ git status
On branch master

No commits yet

Untracked files:
(use "git add <file>..." to include in what will be committed)
preface.txt

nothing added to commit but untracked files present (use "git add" to track)

Takip edilmeyen yeni dosyamızı ekleyelim.

$ git add .

Ve bu dosyamızı commit edelim.

$ git commit -m "Preface files updated."

Oluşan commitleri görmek için şimdi ‘git log’ komutunu kullanalım.

$ git log
commit 7288a7066ddc76a2eb7e86c03973c4f94053591f (HEAD -> master)
Author: Burak Keçeci <burakdemo@gmail.com>
Date: Mon Jun 13 17:44:48 2022 +0300

Preface files updated.

commit 093e60890e60e19c4d53572127f3499c2ee90b3a
Author: Burak Keçeci <burakdemo@gmail.com>
Date: Mon Jun 13 17:40:50 2022 +0300

Preface files created.

Gördüğünüz gibi yaptığımız 2 farklı commit listelendi.

GIT kullanımı sadece yazılım projelerinde değil örnekte olduğu gibi bir döküman projesinde bile oldukça kullanışlı oluyor. Bu yazıda temel git komutları ile giriş yaptık. Serinin devamında farklı dallarda çalışma ve projeye entegrasyonunu inceleyip, kodlarımızı GitHub vb. gibi platformlarda paylaşmayı öğreneceğiz.

--

--