Ana içeriğe atla

Git Flow İle Proje Oluşturma Ve Başlangıç Ayarları

Git Flow bir git eklentisidir(extensiondır). Git flow eklentisi sayesinde projelerinizi bir ALM ile proje geliştirir gibi geliştirmeniz mümkün. Zira Visual Studio ortamında projenizi geliştiriyorsanız Visual Studio Git Flow eklentisini de kurmanız işinizi çok kolaylaştıracaktır. Eğer projenizi Visual Studio ortamında geliştiriyorsanız Visual Studio Git Flow Kurulumu makalesini takip ederek kurulumu yapabilirsiniz.
Git Flow İnit

Git flow konusunu çok büyük bir konudur. Bir makalede anlatılması da çok zordur. Zira konuya giriş yaptıktan sonra siz de bunu anlayacaksınız. O yüzden bu makaleye başlamadan önce Git Flow Nedir? makalesini okumanızı tavsiye ederim. Bu makaleyi okuduktan sonra Git Flow konusundan altyapı bilgisine sahip olacaksınız.

Bu makalemin amacı ise git flow ile yeni bir projenin nasıl oluşturulduğunu anlatmak ve projeye başlayabilmek için başlangıç ayarlarını yapmaktır. Projeyi oluşturduktan sonraki ayarlar derken ise master, feature, hotfix, support, ve bugfix branch başlıklarının ayarlarıdır.
Öncelikle Git Flow projesi oluşturmakla başlayalım.
Normal git'te proje oluşturmak için git init kullanılırkan Git Flow'da proje oluşturmak için kullanılan komur Git Flow Init komutudur. Bu komutu çalıştırdıktan sonra Git Bash ekranındaki bütün ayarları size vereceğim ve sonra da buna göre açıklamaları yapacağım.

$ git flow init
Initialized empty Git repository in C:/Users/Agha/Desktop/localPublish/.git/
No branches exist yet. Base branches must be created now.
Branch name for production releases: [master]
Branch name for "next release" development: [develop]

How to name your supporting branch prefixes?

Feature branches? [feature/]
Bugfix branches? [bugfix/]
Release branches? [release/]
Hotfix branches? [hotfix/]
Support branches? [support/]
Version tag prefix? [] v
Hooks and filters directory? [C:/Users/Agha/Desktop/localPublish/.git/hooks]

Yukarıda ilk önce git flow init komutunu çalıştırıyorum ve bu komut bulunduğu klasör için bana git flow projesi oluşturuyor. Bu işlemden sonra sırasıyla master ve develop branchlerinin isimlerini girmemi istiyor. Burada ben değişiklik yapmadan varsayılan ayarlarda bırakıyorum. Eğer değiştirmek isterseniz git glow int komutunu çalıştırdıktan sonra paylaştığımı tüm satırlar tek tek soruluyor ve bunlara göre branchler ayarlanıyor.
Genel olarak gördüğüm git flow kullanan herkesin varsayılan ayar olarak yukarıdaki ayarları kullanması ve sadece Version tag prefix için v başlayan ayar yapmalarıdır.
How to name your supporting branch prefixes? sorusu ise ise bize ilgili branchlerin hangi sözle başlayacağını belirtmek içindir. Örneğin feature branch için feature/ girildiğinde ve biz agha ismiyle yeni featur branchi oluşturduğumuzda bu branchin asıl ismi feature/agha branchi olacaktır.
Yani özetle bu ayarlar da branch isimlendirmesinin daha tutarlı ve sabit bir yapıda yapılmasını sağlamak içindir. Bunun dışında eğer git flow destekli GUI'lerden birini kullanmaya başladığınızda da projeyi oluşturduktan sonra bu programların da branchleri bu isim yapısına göre oluşturduğunu göreceksiniz.
Son olarak git flow ile daha etkili çalışabilmek için bir kaç tüyo da vermek istiyorum. Source Tree, Visual Studio, TortoiseGit gibi programların hepsi git flow yapısını destekler. Hatta Jıra kullanıyorsanız Git Flow için de extension'ı bulunmaktdır. Git flow ile daha etkili çalışabilmek için öncelikle komut satırını kullanarak altyapıyı iyice öğrenin. Bundan sonra GUI'lerle devam edin. Çünkü bu öyrenme metodu direk GUI'leri kullanarak öğrenmekten daha iyidir ve altyapınız da sağlam olur ve GUI'lerin eksik kaldığı yerlerde mudahele edebilirsiniz.
Örneğin çokça karşılaştığımı sıkıntılardan bir tanesi Visual Studio Team Explorer'ın branchler arasında geçiş yaparken değişiklik sayısının çok fazla olduğu durumlarda hata vermesidir. ve aynı zamanda mevcut branchleri de bozabilmesidir. Bu gibi durumlarda hemen git reset --hard gibi bir komut kullandıktan sonra git checkout yapabilmek için mutlaka komut satırında da git'i kullanabilmek önemlidir.
Bir diğer önemli Git flow konusunda geçmeden önce Git Server konusunda hakim olmaktır. Eğer bu konuda bilginiz yoksa en başa dönmeniz ve Git Server konusunda iyice öğrenmeniz gerekiyor. Bloğumda da bu konuyla alakalı bir kaç makale bulunuyor ve sizin Git Server konusunu öğrenmenize yetecek kadar bilgi bulunuyor.
Konuyla alakalı sorularınız olursa sormaktan çekinmeyin. En kısa sürede yanıtlamaya çalışacağım...

Yorumlar

Bu blogdaki popüler yayınlar

Azərbaycan Dilində Vurğu Qəbul Etmeyen Şekilçiler

Sözlərdə hecalardan birinin digərlərinə nisbətən daha qüvvətli deyilməsinə heca vurğusu deyilir. Üzərinə vurğu düşən hecaya isə vurğulu heca deyilir. Azərbaycan dilində vurğu adətən söz sonuna düşür. Söz şəkilçi qəbul ederkən vurğu adətən şəkilçinin üzərinə keçir. Məsələn: çiç ə k - çiçəkl ə r - çiçəklərd ə n məkt ə b - məktəbl i - məktəblil ə r - məktəblilərd ə n Buna baxmayaraq dilimizdə bir sıra şəkilçilər var ki onlar vurğu qebul etmirlər. Bu məqalədə Azərbaycan dilində vurğu qebul etməyən şəkilçilər incələnəcək ve bu şekilçilərin hansı hallarda vurğu qebul edib hansı hallarda vurğu qebul etmediyi araşdırılacaqdır. Eyni zamanda bildirmək istəyirəm ki vurğu ilə bağlı daha geniş və ətraflı məlumat üçün Azərbaycan Dilində Vurğunun Praktik Məsələləri adlı məqaləyə də nəzər yetirə bilərsiniz.  1. İsimlərdəki şəxs(xəbərlik) şəkilçiləri Məsələn: müəli'məm müəli'msən müəli'mdir müəli'mik müəli'msiniz müəli'mdirlər Qeyd: -dır4 ...

Ağaçlar Kireçle veya Badana İle Neden Boyanır?

Ağaçlar kireçle boyanmasının veya badana yapılmasının hem çevreye hem de doğaya, ağaçlara faydası var. Bu makalede bu geleneği enine boyuna tartışmaya çalıştık. Ağaca zarar veren mikrop ve bakterileri öldürür. Ağacı çok aşarı soğuk havalarda ve çok aşırı sıcak havalarda korur. Ağacın çürümesini ve kurtlanmasını önler. Ağacın gövdesinin alabileceği zararları en az düzeyde düşürmeyi sağlar. Hoş, güzel, hijyenik, temiz pırıl pırıl bir görüntü oluşturur. Ayrıca çok sıcak havalarda da ağacı yanmaya karşı korumak. En büyük etkisi soğuk havalarda ağacı don vurmalarına karşı korumak . Küresel ısınma göz önüne alındığında mevsim değişiklikleri ani don, ani ısı artışları ve azalışları sonucunun doğuracağı etkenler için yararlı etkin bir yöntem. Gövdeden obur dalların çıkmasını azaltmak için sürülür. Kireçleme ağaçları güneş yanığından korumak için yapılıyor. Ağaçlar da güneşten yanabiliyorlar. Bu arada odun dokudaki gözenekleri doldurarak kapattığı için, zararlıların yuv...

Medyan (Ortanca) Nedir? Nasıl Hesaplanır? Nerelerde Kullanılır?

Medyan işlemi olasılık hesaplamalarında sıkça kullanılan bir sayı dizisinin ortalamasını hesaplamak için alternatif yöntemlerden bir tanesidir. Ortanca medyan işleminin diğer adıdır. Matematiksel olarak medyan işlemi bir sayı dizisi küçükten büyüğe sıralayarak ortada kalan elemanı medyan değeri olarak belirleme işlemidir. Örnek verecek olursak: 2, 1, 5, 4, 5, 1, 2, 3, 5 serisi sıralanırsa 1, 1, 2, 2, 3, 4, 5, 5, 5 serisi elde edilir. Bu seri 9 elemanlı olduğundan ortadaki, yani 5. eleman (medyan) olacaktır. 5. eleman 3 sayısıdır. Yani ortanca değeri 3'dür Eleman sayısı tek sayı olan bir seride medyan değerin sırasının hesaplaması şu şekilde formüle edilir. Medyanın Sırası = (Eleman Sayısı + 1) / 2 Bu formülü yukarıdaki örneği uygulayacak olursak; Medyanın Sırası = (9 + 1) / 2 = 5 Veri serisi eleman sayısı bir çift sayı ise bu durumda serinin 2 medyanı olacaktır. Örneğin 2, 1, 5, 4, 5, 1, 2, 3, 5, 4 serisi sıralandığında 1, 1, 2, 2, 3, 4, 4, 5, 5, 5 s...