Git Flow Macerası

GİTFLOW A BAŞLARKEN yazımda gitflow a giriş yaparak, ayarlarını nasıl yapılacağını anlatmıştım.

Bu yazımda ise komutlarını inceleyerek nerelerde ve nasıl kullanacağımızı anlatmaya çalışacağım.

*** Feature kullanımı

Projelerimizi moduler şekilde tasarlayabiliyorsak, farklı farklı görevlerimizi tanımlayabiliyorsak  featurelar oluşturarak devam etmemiz daha mantıklı olacaktır.Bu sebeple develop dalımızın üzerine feature dallanmasını aşağıdaki kod ile ekliyoruz.

git flow feature start <feature adı>

Hata: Bu komut çalıştırıldığında

Branches ‘develop’ and ‘origin/develop’ have diverged.

Branches need merging first.

Hatası ile karşılaşılıyorsa…

git checkout develop  &&    git pull origin develop

ile  develop dalının güncellemesi sağlanır.

Şimdi feature dallanması yapılabilir.

Projemizde çalışmalarımızı bitirdiysek artık aşağıdaki kod ile featuremizi kapatmamız gerekiyor.

git flow feature finish <feature adı>
 

Featuremuzu diğer çalışma arkadaşlarımızla paylaşabilmek için uzak bir sunucuya yollamak için ise

git flow feature publish <feature adı>

kodunu kullanıyoruz. Başka bir kişinin uzak sunucuya yolladığı featurena ulaşmak istediğimizde ise benzer mantık ile

git flow feature pull <feature adı>

Bu şekilde featurelar ile çalışarak projelerimizi üretebiliyoruz.

***************************

*** Release kullanımı

Her durumda Feature bizim için uygun çözüm olmayabilir kimi zaman feature dallanması yapmadan direk bir release çıkartmak istediğimizde ise

develop dalında çalışmalarımızı bitirdikten sonra

git status
git add .
git commit -m “…” 
git flow release start 1.0.0
git flow release finish 1.0.0

kodları ile sırasıyla yaptığımız değişiklikleri kontrol edip, listeye ekleyip, bir yorum ile birleştirip release olarak çıkartmamızı sağlar.

Bu komutlar bizi master dalına çıkarttı ve push etmemizi bekliyor.

 git push

komutunu çalıştırıyoruz. Bu komutta projede başka değşiklikler olmuşsa çakışma oluşmasını engellemek için hata verebilir ve push dan önce git pull  yapmamızı isteyebilir.

Bu komuttan sonra değişikliklerimizi develop dalınada atmamız gerekebilir bunun için ise

git checkout develop
git push origin develeop

komutlarıyla develeop dalını güncelliyoruz.

Artık uzak serverımıza gidip git pull ile değişkliklerimizi servera alabiliriz.

***********************************

 

 
 
git checkout — yardim.php

ile yardim.php deki yapılan değişiklikler eski haline getirilir.

git commit –amend

önceki commite ekleme yapar. unutulan dosyaları bu şekilde önceki committeymiş gibi yapabiliriz.

git stash