Pull Request Nedir ? — Github #9

Yazılım geliştirme sürecinde, birden fazla geliştiricinin aynı proje üzerinde çalışması sık görülen bir durumdur. Ancak, farklı geliştiricilerin kodlarını güvenli ve koordineli bir şekilde birleştirmek ve yönetmek önemlidir. İşte burada Pull Request(PR) kavramı devreye girer. Bu makalemde Pull Request kavramının önemine değineceğim.
Pull Request Nedir?
Pull Request, bir geliştiricinin yapmak istediği değişiklikleri projenin ana kod branch’i ile birleştirmek için diğer geliştiricilere ve proje yöneticilerine sunduğu bir taleptir. Pull request oluşturulduğunda, değişikliklerin incelemesi ve onayı için diğer ekip üyeleriyle işbirliği yapılır.
Pull Request’in Amacı Nedir?
Pull Request’in asıl amacı, kod değişikliklerinin dikkatlice incelenerek kod kalitesinin artırılması, standardizasyonun sağlanması ve olası hataların tespit edilip giderilmesidir. Ayrıca, pull request’ler aracılığıyla birden fazla geliştiricinin aynı projede koordineli bir şekilde çalışması sağlanır.
Pull Request’in faydaları bununla da sınırlı değil elbette. Ekipler genellikle stajyerleri yetiştirmek amacıyla alabilir veya proje sürecinde yeni bir yazılımcı ekibe katılabilir. Bu kişilerin projeye hızla adapte olmalarını sağlamak ve proje standartlarını korumak için pull requestler önemli bir araçtır. Ayrıca, bu ekip üyeleri, diğer arkadaşlarının pull requestlerini inceleyerek kendilerini geliştirme fırsatı bulabilirler.
Pull Request Süreci
- Geliştirici, geliştirme yapmak için ana branch üzerinden bir branch oluşturur.
- Oluşturduğu branch’e yaptığı değişiklikleri ekler ve bunları gönderir.
- Pull request oluşturmak için GitHub arayüzünü kullanmanız gerekmekte. (Bunun komutlarla da yapılabilmesine rağmen, işlem oldukça zahmetli ve uzun sürdüğü için arayüzü tercih etmenizi öneririm.)
- Projenize ait repository içerisine girerek pull request sekmesine ulaşmanız gerekmektedir. Burada “New pull request” butonuna tıklayarak yeni bir pull request oluşturabilirsiniz.


- Açılan ekranda, birleştirmek istediğiniz ana branch'i veya diğer bir branch'i seçmeniz gerekmektedir. Ardından, çalıştığınız branch üzerinde yaptığınız değişikliklerin bir listesini göreceksiniz.

- Bu seçimlerin tamamlanmasının ardından “Create pull request” butonuna tıklayarak pull request’i oluşturabilirsiniz.
- Açılan ekran, oluşturma adımının son adımını içerir. Ortada, pull request ile ilgili başlık ve açıklama bilgisi bulunur. Sağ tarafta ise pull request’i kimlerin okumasını istediğinizi belirleyebileceğiniz, issue ilişkilendirmesi gibi ek işlemleri yapabileceğiniz bölüm bulunur.

- Pull request ile ilgili ek bilgiler güncellendikten sonra tekrar “Create pull request” butonuna tıklayarak pull request oluşturulur.

Pull Request İnceleme
Var olan bir pull request içerisine girdiğinizde, “Files changed” sekmesine gidilir. Burada var olan kod değişiklikleri dosya dosya size sunulur. Bu değişiklikleri inceleyip, hatalı gördüğünüz noktaları ilişkili satırlarına yorum bırakabilirsiniz.
Son olarak, sayfanın başında bulunan “Review changes” butonuna tıklayarak pull request sahibine:
- Yorumlarınızı iletebilirsiniz,
- Değişikliklerini onaylayabilirsiniz,
- Yaptığınız değişiklikler ile ilgili taleplerde bulunabilirsiniz.

Pull Request Birleştirme
İncelemesi yapılan bir Pull Request’i ana sekmesi üzerinden “Merge” işlemi gerçekleştirilir. Merge işlemi öncesinde pull request geçişi yapmak için gerekli tüm koşulların sağlanması gerekir. Bir geliştiricinin onaylaması, testlerin çalışması vb. koşulların.

Yazımı okuduğunuz için teşekkür ederim, umarım sizin için yararlı olmuştur 🙂
İyi Çalışmalar…
Yararlı Olabilecek Kaynaklar


