4. Github ile Fork ve Pull Request

Fork Etme

Notes
3 min readAug 29, 2015

Fork özelliğini kullanmanın temelde iki sebebi olabilir.
1. Projenin bir kopyasını üzerimize alıp, o kopyadan o sürümden çalışmak.
2. Fork ile alınan projenin üzerinde değişiklik yapıp, proje sahibine geri gönderip, onun onayına sunup, projenin geliştirilmesine katkı sağlamak için. İnsanın kendisini geliştirebilmesi ve farklı tarzda projeler görmesi için ideal bir yöntem.

Başka bir hesapla (FinchHarold) repository oluşturup, kendi hesabımla (salihayesilyurt) da bu projeyi fork edeceğim. Projeyi aşağıdaki şekilde oluşturdum.

index.html oluşturuldu.
fork etme

Peki bu projeyi bilgisayarıma çekmek istersem ne yapmam gerekli?
Öncelikle, github masaüstü uygulaması ile projeyi clone ediyorum.

fork’lanan projeyi clone etme

Şimdi, projeyi fork eden olarak, projede değişiklik yapıp, push edeyim. Bakalım projenin asıl sahibi ile fork eden arasında nasıl bir farklılık oluşuyor.

fork eden / fork etmeyen (projenin orjinali)arasındaki fark.

Bu şekilde projeleri, kendi üzerinize fork edip, orjinal projeyi değiştirmeden, başkalarının projeleri üzerinde çalışabiliriz.

Pull Request

Fork ettiğimiz bir projenin üzerinde çalışıp, projede yaptığımız değişiklikleri, projenin sahibine pull request olarak gönderebiliriz. Pull request olarak göndermek demek; ben projede değişiklikleri yaptım, sen de bu bu değişiklikleri onayla ve projene merge et, ben de katkı sağlamış olayım demek.

Github masaüstü uygulamasında sağ üste yer alan icona tıklayıp, aşağıdaki şekilde yapabiliriz.

github masaüstünde pull request

Aynı şekilde github.com’dan da aşağıdaki şekilde yapılabilir.

github.com da pull request 1

Yandaki resimde işaretlenen yere tıklayıp, açılan sayfada create a pull request diyoruz.

github.com da pull request 2

Peki bu yapılan pull request’in onaylanması nasıl olacak?
Repository’i oluşturan kişiye aşağıdaki gibi bir bildirim gönderilecek.

pull request bildirimi

Yukarıdaki resimde mavi ile görünen linke tıklayıp, pull request’in ayrıntısına ulaşabiliriz.

pull request’i merge ya da inceleme işlemi

Merge pull request dediğimizde bir açıklama istiyor. Onu da yazıp, onayladıktan sonra görüntü aşağıdaki şekilde oluyor.

pull request onaylandı

Dosyalarımıza baktığımızda alınan değişikliklerin repository’i etkilediğini görebiliriz.

Github Gelişim Grafikleri

Proje üzerinde yaptığımız değişiklikler sonucu, graph dediğimiz projenin gidişatını gösteren network grafikleridir.

Yukarıda github.com da pull request 1 resminde yer alan Graphs sekmesine tıklayıp, açılan sayfada Network sekmesine geliyoruz. Aşağıdaki gibi bir sayfa ile karşılaşıyoruz.

network graph’ı

--

--