git-flow cheatsheet

Tasarlayan: Daniel Kummer

Vincent Driessen'ın verimli dallanma modeli kullanılarak tasarlanmıştır.

çeviriler: English - Brazilian Portugues - 简体中文(Simplified Chinese) - 日本語 - Türkçe 한국어(Korean)

Hakkında

git-flow, Vincent Driessen'in dallanma modeli için geliştirilmiş, git repoları için üst düzey işlemler yapabilmenizi sağlayan, sözkonusu dallanma modelini kullanmayı oldukça kolaylaştıran git eklentilerini içerir.
Vincent Driessen'in dallanma modeli hakkında

★ ★ ★

Bu döküman git flow işlemleri hakkında temel kullanım şekillerini içermektedir.

★ ★ ★

Temel Ipuçları

★ ★ ★

Ayarlar

★ ★ ★

OSX

$ brew install git-flow

Linux

$ apt-get install git-flow

Windows (Cygwin)

$ wget -q -O - --no-check-certificate https://github.com/nvie/gitflow/raw/develop/contrib/gitflow-installer.sh | bash

Git flow kurulumu için wget ve util-linux gerekmektedir.

Git-flow kurulumu hakkında detaylı bilgi için git flow wiki'yi ziyaret edebilirsiniz.git flow wiki.

install git-flow

Baslarken

Git flow, kullanmak istediğiniz projede ayarlarınızı özelleştirmek amacıyla başlatılır (initialize).

★ ★ ★

Başlangıç (Initialize)

git flow'u kullanmak istediğiniz reponuzdayken;

git flow init

komutuyla başlatabilirsiniz.

Bu noktada kafanızda dallarınızı (branches) isimlendirme konusuna ilişkin birçok soru işareti oluşacaktır. Bu bağlamda varsayılan (default) değerleri kullanmanız önerilir.

Özellikler (Features)

★ ★ ★

Yeni bir özellik eklemesi başlatmak

(feature start)

Yeni özelliklerin eklenmesi öncelikle develop dalından (branch) başlar.

Yeni bir özelliği kodlamaya

git flow feature start MYFEATURE

ile başlarız. Bu komut bize develop dalını (branch) temel alan bir özellik dalı (feature) oluşturur. Ve bulunduğumuz dalı develop/MYFEATURE olarak değiştirir.

Bir özellik eklemesi bitirilirken (feature finish)

Bir özelliğin eklenme işlemi bitirilirken şunları yapılır:

  • Kendi çalıştığımız özellik dalı (burada MYFEATURE) develop ana dalı ile birleştirilir.
  • Bu birleşmeden sonra kendi özellik dalımız (MYFEATURE) silinir.
  • Bulunduğumuz dal tekrar develop olarak değiştirilir.
git flow feature finish MYFEATURE

bu işlemleri bizler için yapar.

Bir özelliği yayınlamak

(Publish a feature)

Bir ekip içerisinde geliştirme mi yapıyorsunuz ?
O zaman geliştirdiğiniz özelliği bir uzak sunucuya gönderin, böylelikle geliştirdiğiniz özellik diğer kullanıcılar tarafından kullanılabilir.Öyleyse ;

git flow feature publish MYFEATURE

sizin için bu işi halledebilir.

Yayınlanmış bir özelliği almak (Getting a published feature)

Uzak sunucu üzerinde yayınlanmış bir özelliği kendi yerel (local) çalışma ortamınıza aktarırken:

git flow feature pull MYFEATURE

size yardımcı olacaktır.

Bir yayın çıkarırken (release)

★ ★ ★

Bir sürüm yayınlamak

(Start a release)

Yayınlamaya başlamak için,

git flow release start RELEASE [BASE]

komutu kullanılır.Bu komut ile develop dalını temel kabul eden bir release dalı (branch) yaratılır.

Opsiyonel olarak yayınınızın [BASE] noktasından başlamasını sağlayabilirsiniz. Bu commit develop dalında (branch) iken yapılmalıdır.

★ ★ ★

Yayınlama dalınız (release branch) oluştuktan sonra bu yöntem ile diğer yazılımcılar tarafından yapılan release commitlerinin de kabul edilmesini sağlayabilirsiniz. Bunu özellik yayınlama (feature publishing) ile kolaylıkla yapabilirsiniz.

git flow release publish RELEASE

(Uzak sunucu üzerindeki yayınları
git flow release track RELEASE
ile izleyebilirsiniz. )

Bir sürüm yayınını tamamlamak

(Finish up a release)

Bir sürüm yayınını tamamlarken git dallanmasının (branching) en büyük adımını atarız. Yayınlanma tamamlanırken:

  • Yayınlama yaptığımız dal olan release dalı (branch) master ana dalı ile birleştirilir.
  • Etiketler (tags) isimleri ile birlikte yayınlanır.
  • Arkaplandaki birleştirmeler (back-merges) develop dalında yayınlanır.
  • Yayınlama için açmış olduğumuz dal (branch) silinir.
git flow release finish RELEASE

sizler için bu işlemleri halledecektir. Ancak etiketlerinizi de eklemeyi unutmayın! git push --tags bu sorununuzu da halledecektir.

Hata giderimleri (Hotfixes)

★ ★ ★

Bir hata giderimini başlatmak

(git flow hotfix start)

Diğer git flow komutlarında olduğu gibi bir hotfix başlatılırken :

git flow hotfix start VERSION [BASENAME]

komutu kullanılır. Versiyon argümanları yeni hotfix yayınının adını alır. Opsiyonel olarak başlangıç noktası için bir isim özelleştirmesi yapabilirsiniz (basename).

Hata giderimi bitirme

(Finish a hotfix)

Bir hata giderimi tamamlanırken, develop ve master dalları ile birleştirilir. Ayrıca master dalına (branch) hotfix versiyonunun etiketi eklenir.

git flow hotfix finish VERSION

Komutlar (Commands)

git-flow commands

Içerik bilgisi (Backlog)

★ ★ ★

★ ★ ★

comments powered by Disqus