Ana içeriğe atla

Git Server WorkFlow - Git İş Akışı

Git Server Blue LogoBu makalemizde Git Server yapısını ve mantığını analayabilmeniz açısından git iş akışının nasıl olduğunu açıklamaya çalışacağım. Bilindiği gibi Git Server diğer versiyon yönetim sistemlerinden farklı olarak three-tree yapısına sahiptir. İş akışını da bu yapı belirler. (Git Server Three-tree yapısı makalesine göz atabilirsiniz) Bu yapının temel taşı working copy ve repository arasında staging index olarak adlandırılan geçici hafıza görevi gören bir katmanın eklenmesidir. Bu yapı extra kontrol dışında aynı zamanda yaptığımız değişiklikleri commit ederken bir anlamda onay mekanizması da sağlar. Git iş akışını anlayabilmek için bir projede yaptığımız örnek bir değişiklik üzerinde nasıl tepki verdiğini inceleyeceğiz ve örnek üzerinden iş akışı anlatılacaktır. 

Konunun anlaşılması açısından eklediğim resim yaptığımız işlemeleri görselleştirmek açısından anlamlı olacağı için sizinle paylaşıyorum. Bu resim doğrultusunda git bash'de çalışarak örnek bir projeye değişikliklerin nasıl eklendiğini anlatacağım.
Git Workflow, Git İş Akışı, Git Server


Bu işlemleri anlamak açısından ilk önce proje için git status komutunu çalıştıralım . Aşağıdaki gibi bir sonuç göreceksiniz.


$ git status

On branch master



Initial commit

Untracked files:
  (use "git add ..." to include in what will be committed)

        file.txt

nothing added to commit but untracked files present (use "git add" to track)

Görüldüğü  gibi şuanda değişiklikler üzerinde işlem yapmadık. Bu değişiklikleri git add file.txt komutu ile staging index alanına ekliyoruz. Bu komutu çalıştırdıktan sonra tekrar git status komutunu kullanalım. Bize aşağıdaki gibi bir sonuç verecektir.

Agha@AghaAlizade MINGW64 /c/GitWorkFlow (master)
$ git add file.txt

Agha@AghaAlizade MINGW64 /c/GitWorkFlow (master)
$ git status
On branch master

Initial commit

Changes to be committed:
  (use "git rm --cached ..." to unstage)

        new file:   file.txt

Görüldüğü gibi şuanda staging index alanında file.txt dosyası mevcut. Bunu repository'ye eklemek içinse git commit komutunu kullanabiliriz. Commit ettikten sonra tekrar git status komutunu çalıştırırsak aşağıdaki gibi bir ekran çıktısı ile karşılaşacağız.

$ git commit -m "file.txt dosyasının commit edilmesi"
[master (root-commit) 2150b2a] file.txt dosyasının commit edilmesi
 Committer: Agha Alizade
Your name and email address were configured automatically based
on your username and hostname. Please check that they are accurate.
You can suppress this message by setting them explicitly. Run the
following command and follow the instructions in your editor to edit
your configuration file:

    git config --global --edit

After doing this, you may fix the identity used for this commit with:

    git commit --amend --reset-author

 1 file changed, 0 insertions(+), 0 deletions(-)
 create mode 100644 file.txt

Agha@AghaAlizade MINGW64 /c/GitWorkFlow (master)
$ git status
On branch master
nothing to commit, working directory clean

Yukarıda git add komutunu çalıştırırken git server bize 
use "git rm --cached ..." to unstage diye bir mesaj da göstermişti. Bu mesajın anlamı ise yaptığınız değişiklikleri staging index alanına göndermeden direk repository'e eklememizi sağlayan komuttur. Git Server iş akışında esneklik sağlar ve yaptığınız değişiklikleri direk olarak repository alanına eklemenize izin verir. Ama bu iş akışının three-tree yapısını şeklinde tasarlanmasının doğasında yatan nedenlerin en başında kontrol gelir ve bu işlemi yaparken bir daha düşünmenize yardımcı olur. Çok kısa sürenizi alacak bu işlemi siz de normal git akışında önerildiği ve yukarıda anlatıldığı gibi yapmanızı öneririm. 
Yukarıdaki resim ise file.txt dosyasında değişiklik yaptıktan sonra tekrar bunu repository alanına eklerken olacak iş akışını görselleştirmektedir. Anlattıklarım doğrultusunda bu iş akışını da sizin çıkaracağınızı düşünereke makaleyi daha fazla uzatmak istemiyorum. Çünkü burada da aynı işlemler yapılıyor.

Konu ile alakalı sorularınız varsa lütfen sormaktan çekinmeyin. En kısa sürede yanıtlamaya çalışacağım.

Yorumlar

Bu blogdaki popüler yayınlar

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

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

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