global information tracker

Git Komutları ve Kullanımı

Merhabalar bugün sizlerle projelerimizde kullandığımız git versiyon kontrol sistemi ve buna ait en çok kullanılan git komutlarından bahsetmek istiyorum. Bildiğiniz gibi git ile hem zamandan hem çalışma alanından tasarruf edebildiğimiz gibi ortak projeler yürüttüğümüz arkadaşlarımızla uzak repository hizmeti veren github, gitlab vb. ortamları üzerinden işlemlerimizi ortak bir şekilde yürütebiliyoruz. Terminal komutlarından bahsedip ondan sonra git komutlarına geçmek daha faydalı olacağını düşünüyorum.

Terminal Komutları

1) cd

Herhangi bir dizine ve klasöre erişmek için kullanırız.

change directory

2) pwd

İçinde olduğumuz klasörü gösterir.

print working directory

3) ls -a

Bulunduğumuz dizindeki gizli klasörleri gösterir.

list secret

4) cd ..

Bir önceki klasöre dönmek için kullanılır.

5) mkdir

Herhangi dizinde bir kasör oluşturmaya yarar.

make directory

6) touch

Herhangi dosya oluşturmak için bu komutu kullanırız.

Git Komutları ve Kullanımı

Yukarıdaki resimde gösterilen working directory bizim çalışma alanımız, staging area ise indeksleme alanıdır.Lokal repository bu alan içerisinde git init fonksiyonu ile oluşturulur.

Terminal komutlarını ve git çalışma fonksiyon matığına kısaca değindikten sonra şimdi git komutlarına bakabiliriz.

1. Version

Bu komut ile çalıştığımız git’ in versiyonunu öğrenebiliriz.

2. Config

Bu komut yapılandırma ve ayar işine yarar.Örneğin ilk kullanımda kullanıcı ve email tanımlamayı config ile yaparız.

3. git init

Bu komut bize git dizini oluşturmamızı ve projemize staging areada lokal repository oluşturmamızı sağlar.

git init

fileTest klasörü içerisinde tanımlanan git init komutu ile bu komutun içerisinde bize boş bir git deposu ilişkilendirdiğini gösteriyor.

4. git status

Local repository ile çalışma alanımız arasındaki farklılıkları gösteren komuttur. Ayrıca hangi branch altında çalışıldığınıda gösterir. Örneğin çalıştığımız klasör de test.txt dosyası içerisine yazı ekledik, git status komutunu çalıştırdığımızda değişikliği bize bildiriyor.Fakat staging area ya hala gönderilmedi.

git status

5. git add

Bu komut ile yapılan değişiklikler ya da mevcut dosya veya proje staging area ya gönderilir.

git add test.text komutu çalıştırıldıktan sonra status ile kontrol ettiğimizde aşagıdaki resimdeki gibi yeşil renkte commit edilmeye hazır gözükecektir.

git add ve git status

Eğer klasör içerisindeki tüm dosyaları indekslemek isteseydik kullanacağımız komut ;

git add .

şeklinde olurdu.

6. git rm — cached

Staging area ya gönderilen herhangi dosyayı bu alandan çıkarmak için kullanılır.

7. commit

commit ile staging area da indekslenen dosyaya açıklama ekliyoruz.

git commit -m “dosya içerisine yazı eklendi”

commit

Eğer varolan commit düzenlemek istersek ;

amend

8. git log

commit işlemi sonucunda oluşturulan her commit’ e bir id değeri atanır. Oluşturulan commit id si ve kim tarafından oluşturulduğunu görmek için kullanırız.

git log ve commit id

Birden fazla commit var ve daha düzenli görüntülemek istersek çalıştıracağımız komut oneline komutudur ;

oneline

9. git reset

Yapılan commit ve değişiklikleri geri almak için kullanılır.

commit id ve hard kullanımı
commit id ve soft kullanımı

10. push

git push komutu ile uzak repoya proje ya da dosya içeriğimiz gönderilir.

git push githubda oluşturulan uzak repository linki ve branch adı yazılıp komut gönderilir.Bu işlem sonucu ;

Staging area da bulunan dosyalarımızı uzak repoya göndermiş olduk.

11. branch

Branch çalışılan dallara verilen isimdir. Bir projede çalışırken genelde geliştiriciler farklı branchlarda çalışır ve main branch ile merge edilmesi için istek gönderilir. Main yada master branch projenin en güncel ve temiz olduğu branchdir.

Yeni branch oluşturmak ve daha sonra master dalından oluşturulan yeni dal olan feature adındaki branch’e geçmek için ;

git branch feature ve

git checkout feature komutlarını sırasıyla kullanırız.İlk komut yeni dal oluşturdu ve daha sonra master dan feature dalına switch yapıldı.

git checkout feature

Yeni dal oluşturup aynı zamanda switchlemek için ise daha kısa yol olan şu komutu kullanmak gerekiyor ;

git checkout -b feature2

Oluşturulan dalı silmek için ;

git branch -D feature1

11. merge

Oluşturulan bu dal ile master dalını birleştirmek için merge komutunu kullanırız.

git merge feature2

12. gitignore

Gösterilmek istenmeyen dosyalar gitignore dosyası içerisinde belirtilir. Bu dosyayı touch .gitignore komutu ile oluşturabiliriz. Gitignore içerisinde belirtilen bu dosyalar git tarafından algılanmaz. Örneğin fileTest klasörü içerisinde a dosyamız git tarafından algılansın fakat b dosyamız gizli kalsın git tarafından algılanmasın istiyorsak gitignore dosyası içerisine ;

!filetest/a komutunu kullanırız. Eğer klasör içerisinde herşeyi saklamak istersek fileTest/* olarak belirtiriz.

13. git alias

Kullanılan komutları kısaltmaya yarar.

Örneğin aşağıda kullandığımız konfigürasyon komutunun kısaltmak için alias .st kullandık, git st ile kullanılabilir hale getirdik.

Temel düzeyde git komutlarından bahsetmeye çalıştım umarım faydalı bir yazı olmuştur bir sonraki yazıda görüşmek üzere sağlıcakla ..

iOS Developer