Git, Proje yönetiminde artık kodları ortak olarak paylaşmak için svn ve git teknolojileri iş hayatımızda daha fazla yer edinmeye başladı ve önemi artarak devam ediyor. Svn ve git teknolojilerini aracı yazılım ile yönetebilir yada kod satırından işlemleri gerçekleştirebilirsiniz.
Git işlemlerini kod satırından gerçekleştirme
Git Init
Komut satırından git
projesi oluşturulacak ilk adım olan komuttur git projesini oluşturmak istediğiniz dizine komut satırından gidip ardından git init
komutunu çalıştırın böylelikle gizli olarak .git
adında bir klasör oluşturulur artık bu klasör üzerinden git
işlemlerini gerçekleştirebiliriz. Benim işlem yapacağım klasör adı muratoner-test
Git Add
Şimdi klasör içerisinde bir test.txt
adında dosya oluşturalım. Ardından test.txt
dosyası içerisine Hello World!
diye bir satır ekleyin. git add komutu ile yapılan değişiklikleri yada dosyaları git’e ekleyebilirsiniz.
Eğer birden fazla dosya eklenecekse o zaman arada boşluk bırakarak dosyalar uzantısı ile yazılmalı örnek: git add test.txt test2.txt
gibi.
Git Status
Git projesiyle ilgili bazı bilgiler almamıza yarar örneğiz hangi branch’de çalışıldığı yada commit edilmesi gereken değişiklik varmı yada eklenecek dosya varmı gibi bilgiler alınabiliyor.
Git Diff
Değişiklik yaptığınız veya başkaları tarafından yapılan değişiklikleri kod satırından görmek için git diff dosyaadi
şeklinde bir sözdizimi kullanmalısınız.
+
simgesi dosyaya eklenen satırları -
işareti ise kaldırılan satırları göstermektedir.
Git Commit
Yapılan değişiklikleri iş akışına eklemek için commit
edilmesi gerekiyor commit
ederken yapılan değişiklikleri açıklamak veya bir mesaj eklemek için -m
eki ardından tırnak içerisinde mesaj yazılmalıdır.
Commit
etmeden önce değişiklik yaptığınız yada eklemek istediğiniz dosyaları git add
sözdizimi kullanarak işaretleyiniz.
Git Branch
Git’de dallandırma olarak geçen bu yapı genellikle versiyonlama, bugfix, master, develop, release gibi ayrımları farklı branch’ler altında yönetme böylelikle bugfix’lerin çözülmesi ayrı branch’lerden sağlandıktan sonra master branch’ine merge işlemi sağlanır diğer ek feature’ler için açılmış branch’lerden tamamlananlarda master’a merge edilir ve yeni bir sürüm çıkaracağında ise 2 seçenek vardır ya versiyonlayarak ilerler her bir versiyon için yeni bir branch açarsınız(Best Practices) yada release branch’ine merge işlemi gerçekleştirirsiniz böylelikle bugfix, feature development ve release’leriniz ayrı branch’lerde sağlıklı bir şekilde yürütülerek takım arkadaşlarına da engel olmadan geliştirmeler yapılmış olur.
git branch komutunu herhangi bir parametre girmeden çalıştırdığınızda reponuza tanımlı olan branch’ler listelenecektir.
Üstte master yanında yer alan “*” işareti bu branch’in aktif olan branch olduğunu göstermektedir bu işaret ile hangi branch’de çalıştığınızı öğrenebiliyor olacaksınız.
Yeni bir branch oluşturmak için yapmanız gereken tek şey git branch <branchadi>
komutunu çalışltırmaktır. <branchadi> yazan yere olmasını istediğiniz branch adını girin. Yeni oluşturduğunuz branch’e geçiş yapmak için ise Git Checkout komutunu kullanmalısınız.
Git Log
İş akışında yapılan değişiklikleri git log
sözdizimi kullanarak kod satırında görüntüleyebilirisiniz.
Git Checkout
Farklı bir commit yada brach’e geri dönmek yada geçiş yapmak için kullanılabilecek komuttur peki neden böyle birşeye ihtiyaç duyulur? Sebebi şöyle birşey olabilir yeni geliştirmelerinizde daha önceki commitlerinizde karşılaşmadığınız bir sorun ile karşılaştınız ve sorunun ne olduğunu tam olarak anlayamadınız bu durumda isterseniz iki farklı commit arasında bir compare işlemi gerçekleştirebilir yada direkt olarak çalıştığınız düşündüğünüz önceki bir commit’e geçiş yaparsınız bu geçiş işlemini yapmak için git checkout
komutunu kullanmalısınız. Yalnız git checkout komutu bizden dönmek istediğimiz commit’in id’sine ihtiyaç duymaktadır. Bu kodu almak için bir üstteki konumuz olan Git Log komutunu kullanabilirsiniz. Örnek olarak ilk yükleme adındaki ve 87fd3ace7bf9d5cead4dfc052ea8ee64d45b61f9 id’li commit’e geri dönmek için alttaki checkout komutunu çalıştırmalısınız.
Git Checkout komutu için üstte örnek genellikle commit üzerinden örnek verildi fakat farklı branch’ler arası geçişte sıkça kullanılır. Farklı bir branch’e geçiş yapmak için üstteki commit id yerine geçiş yapmak istediğiniz branch adını yazarsanız böylelikle ilgili branch’e geçiş sağlanır.
Git Show Head
En son yapılan commit’e ait status, diff bilgilerini almak için git show head sözdizimini kullanmalısınız.
Git Help
Git ile ilgili yardım almak için git --help
sözdizimini kullanmalısınız.
Repoyu Farklı Sunucuya Taşıma Yöntemi
Eğer reponuzu başka bir sunucuya taşıyacaksanız örnek veriyorum github’da yer alan bir projenizi eğer gitlab’a taşıyacaksanız alttaki kod bloklarını kendi repo adreslerinize göre düzenletip tüm commit, tags, branch’ler ile birlikte taşıma işlemini gerçekleştirebilirsiniz.
Kaynak
Gerekli Olabilecek Bazı Bağlantılar
- Makinenize Git Kurmak İçin: http://git-scm.com/
Kaynak Kod Yönetimi İle Alakalı Diğer Makaleler