Artik SVN/Git sistemleri kullanmamak gibi bir devir kalmadi gibi birsey… Hala kullanmiyorsaniz o sizin ayibiniz :)

Bu yazimda basit Git komutlarina deginecegim;

Git Olusturma

Olusturma kelimesi ne kadar dogru bilemem de Ingilizcede initialize olarak gecen, kisaca init olarak kullanilan kelime neyse iste ondan…

Initialize yaptigimizda klasorde git alt yapisini (klasor yapisini) olusturur.

 

Duruma Bakma

Ingilizcedeki status kelimesi Turkce’ye durum olarak cevirilebilir. Repository’mizin durumuna bakmak cogu zaman yapmamiz gereken bir adimdir. Bize repo ile ilgili bilgi verir ve duruma gore islem yapmamizi saglar.

 

Repository Klonlama

Bir repository’yi klonlamak en basit islemlerden birisidir. Tek sart hedef klasorun olmamasi ya da bos olmasidir (bazilari klasor olsa da icini bosaltiyor vs o ayri bir konu fakat Git SCM uzerinden konusacagim)

Repository url olarak ornegin Github’da bir repository’ye girdiginizde Clone or Download yazan buttonda altta cikan linki kullanacaksiniz:

Klasor adi ise zorunlu degildir fakat ogrenmenizde de fayda var elbette.

Ornek olarak

yapabilirsiniz. Eger SSH Key ayarlamadiysaniz hata verebilir, onu da farkli bir yazida anlatacagim simdilik Ingilizce makalelere bakabilirsiniz.

 

Repository’ye Dosya Ekleme

Dosya eklemek ve commit etmek iki ayri istir, hatta yukariya (sunucuya) yuklemek ayri islerdir. Bunu adim adim isleyecek olursak, dosyalari eklemek, commit etmek ve yukari yuklemek (pushlamak) olarak sirayla gitmemiz gerekiyor.

Dosyalari Ekleme

Dosyalari repository’ye eklemek icin add argumanini kullanacagiz.

Ornegin;

Repositorymizin root dizinindeyken bu sekilde ekleyebiliriz, root dizinde degilsek cd ile dolasarak islem yapabiliriz.

Ornegin;

 

Dosyalari Commit Etme

Add yaparak degisiklik yapilmis, eklenmis, silinmis dosyalari vs commit’imiz icin hazirladik. Simdi sira commit etmede. Commit etmeyi islemek olarak adlandirabiliriz. Yani; su, su dosyayi ekledim, su dosyayi sildim, bunu guncelledim vs diyoruz.

Commit ederken bir de mesaj yazmamiz gerekiyor, neyi ekledik sildik gibi fakat cok da abartmamak gerek zaten committe neler degisti gorulebiliyor. Ornegin “#123. bug giderildi” yazabiliriz. Tutup da a dosyasi eklendi, b dosyasi silindi gibi uzun uzadiya mesaj yazmaniza gerek yok, ornek olarak burayi inceleyebilirsiniz. Ornekteki commit detayinda sadece 1 tane dosyada degisiklik yapildigi icin sadece o dosyanin degisikliklerini gorebilirsiniz fakat farkli repolara bakarak o committe neler degismis gorebilirsiniz.

Yukarida tek satirlik bir ornek yaptik.

-m ile direk mesajimizi yazabiliriz. Alternatif olarak direk git commit diyerek vim gibi mesajimizi yazabilir ve degisiklige detayli yazi yazabilirdik.

 

Commit(ler)i Pushlama

Pushlamak, yukari atmak olarak da adlandiracagimiz bir adim… Dosyalari duzenledik, sildik, ettik artik sira degisiklikleri ana repository’ye atmakta.

Ornegin;

 

Uzak Repo’dan Guncel Hali Cekmek

Remote (uzak) repository’den son guncel halini cekmek icin oncelikle fetch, ardindan pull yapacagiz.

Fetch

Fetch, Ingilizcede ‘git, al, getir‘ demektir (ya da oyle birsey). Fetch ettigimizde ise son guncel halinin sadece durumunu getirir. Yani su degisti, bu degisti gibi… Degisiklikleri cekmek icin ise pull’u kullanacagiz.

Ornegin;

Varsayilan isim, belirtmemisseniz eger “origin” dir…

 

Pull

Pull, cekmek demektir. Degisiklikleri aldik, artik cekebiliriz. Fetch yapmadan pull yaparsaniz fetchlemis oldugunuz son halini cekersiniz.

Ornegin;