GitHub akışının bileşenleri
Bu ünitede GitHub akışının aşağıdaki bileşenlerini gözden geçiriyoruz:
- Dallar
- Commit’ler
- Çekme İstekleri
- GitHub Akışı
Dallar nedir?
Son bölümde depolarınızda yeni bir dosya ve yeni bir dal oluşturduk.
Dallar GitHub deneyiminin önemli bir parçasıdır çünkü üzerinde çalıştığımız projenin tamamını etkilemeden değişiklikler gerçekleştirebileceğimiz yerlerdir.
Dalınız yeni özellikler veya düzeltmelerle deneme yapmak için güvenli bir yerdir. Hata yaparsanız, değişikliklerinizi geri alabilir veya hatayı düzeltmek için daha fazla değişiklik gönderebilirsiniz. Siz dalınızı birleştirene kadar değişiklikleriniz varsayılan dalda güncelleştirilmeyecek.
Not
Alternatif olarak, yeni bir dal oluşturabilir ve git'i terminalde kullanarak kullanıma alabilirsiniz. Komut şu şekilde olacaktır: git checkout -b newBranchName
İşlemeler nedir?
Önceki ünitede, bir işleme göndererek depoya yeni bir dosya eklediniz. Şimdi işlemelerin ne olduğunu kısaca gözden geçirelim.
Commit, bir daldaki bir veya daha fazla dosya üzerinde yapılan bir değişikliktir. Bir işleme her oluşturulduğunda, ona benzersiz bir kimlik atanır ve zaman ve katkıda bulunan ile birlikte izlenir. İşlemeler, sorun veya çekme isteği gibi bir dosyanın veya bağlantılı öğenin geçmişini gözden geçiren herkes için net bir denetim izi sağlar.
Git deposunda, sürüm denetimi işleminden geçen bir dosya birkaç geçerli durumda bulunabilir. Git deposundaki bir dosyanın birincil durumları İzlenmeyen ve İzlenen'dir.
İzlenmemiş: Henüz Git deposunun parçası olmayan bir dosyanın ilk durumu. Git, varlığının farkında değil.
İzlenen: İzlenen dosya, Git'in etkin olarak izlediği dosyadır. Aşağıdaki alt durumlardan birinde olabilir:
- Değiştirilmemiş: Dosya izlenir, ancak son işlemeden sonra değiştirilmemiştir.
- Değiştirildi: Dosya son işlemeden bu yana değiştirildi, ancak bu değişiklikler henüz sonraki işleme için hazırlanmadı.
- Aşamalı: Dosya değiştirildi ve değişiklikler hazırlama alanına (dizin olarak da bilinir) eklendi. Bu değişiklikler işlenmeye hazırdır.
- İşlendi: Dosya, deponun veritabanındadır. Dosyanın en son kaydedilmiş sürümünü temsil eder.
Bu durumlar ve alt eyaletler, her bir işlemenin projenizin hangi aşamasında olduğunu öğrenmek için ekibinizle işbirliği yapmak için önemlidir. Şimdi çekme isteklerine geçelim.
Çekme istekleri nedir?
Çekme isteği, bir daldaki commit’lerin başka bir dalla birleştirilmeye hazır olduğunu bildirmek için kullanılan mekanizmadır.
Çekme isteğini gönderen ekip üyesi, bir veya daha fazla gözden geçirenden kodu doğrulamasını ve birleştirmeyi onaylamasını ister. Bu gözden geçirenler, değişiklikler hakkında yorum yapma, kendi değişikliklerini ekleme veya daha fazla tartışma için çekme isteğini kullanma olanağına sahiptir.
Değişiklikler onaylandıktan sonra (gerekirse), çekme isteğinin kaynak dalı (karşılaştırma dalı) temel dal ile birleştirilir.
Artık tüm malzemeleri bildiğimize göre GitHub akışını gözden geçirelim.
GitHub akışı
GitHub akışı, güvenli denemelere olanak tanıyan basit bir iş akışı olarak tanımlanabilir. Dallanma, çekme istekleri ve birleştirmeyi kullanarak ekibinizle yeni fikirleri ve işbirliğini test edebilirsiniz.
Artık GitHub'ın temellerini bildiğimize göre GitHub akışında ve bileşenlerinde adım adım ilerleyebiliriz.
- Oluşturduğunuz değişikliklerin, özelliklerin ve düzeltmelerin ana dalı etkilememesi için bir dal oluşturarak başlayın.
- Ardından değişikliklerinizi yapın. Ana dala birleştirmeden önce özellik dalınıza değişiklikleri dağıtmanızı öneririz. Bunun yapılması, değişikliklerin üretim ortamında geçerli olmasını sağlar.
- Şimdi, ortak çalışandan geri bildirim istemek için bir çekme isteği oluşturun. Çekme isteği gözden geçirmesi o kadar değerlidir ki, çekme isteklerinin birleştirilebilmesi için bazı depoların gözden geçirmeyi onaylaması gerekir.
- Ardından işbirliği yaptığınız kişilerden gelen geri bildirimlerinizi gözden geçirin ve uygulayın.
- Değişiklikleriniz hakkında kendinizi iyi hissettiğinizde, çekme isteğinizi onaylayıp ana dalda birleştirmenin zamanı geldi.
- Son olarak dalınızı silebilirsiniz. Dalınızın silinmesi, daldaki çalışmanızın tamamlanıp sizin veya başkalarının yanlışlıkla eski dalları kullanmasını önlediğini gösterir.
İşte bu kadar, GitHub akış döngüsünden geçtiniz!
Şimdi sorunlar ve tartışmalar arasındaki farkları ele alacağımız bir sonraki bölüme geçelim.