Birincisi, git'de her pull
şeyin tam anlamıyla bir dallanma işlemi olduğunu ve her push
birinin bir birleşme olduğunu belirtmek isterim . master
Bir geliştiricinin makinede gelen tamamen ayrı bir dalıdır master
teknik açıdan eşit ayakta ile, paylaşmak merkezi repo. upstream
Amaçlarıma daha uygunsa , zaman zaman yerel sürümümü veya başka bir şeyi yeniden adlandırırım .
Bunu işaret ediyorum, çünkü birçok kurum şubeleri meslektaşınızdan daha etkili kullandıklarını düşünüyor, gerçekten de bir şube için ek bir isim oluşturmaktan başka bir şey yapmıyorlardı. Eğer meslektaşınız bir atomik taahhütte özellikler taahhüt ediyorsa, bir özellik dalının birleştirme taahhüdü kadar geri çekilmek kolaydır. Özellik dallarının büyük çoğunluğu çok kısa ömürlü olmalı ve yine de sık sık birleştirilmelidir.
Olduğu söyleniyor, çalışma tarzının ana dezavantajları iki yönlüdür. İlk olarak, bitmemiş bir özellik üzerinde işbirliği yapmayı çok zorlaştırır. Bununla birlikte, işbirliğinin gerekli olduğu zamanlarda şube oluşturmak zor olmaz.
İkincisi, birleşmeden önce incelemeyi çok zorlaştırır. Bu noktada, onu gerçekten ikna etmeniz gerekmez. Github, gerrit veya gitlab gibi bir araç benimseyebilir ve tüm istekleri kapsayan çekme isteği kodu incelemeleri ve otomatikleştirilmiş testlerden geçebilirsiniz. Böyle bir şey yapmıyorsanız, açıkçası git'i tam potansiyeli için kullanmıyorsunuzdur ve meslektaşınızın bu potansiyeli görmemesi şaşırtıcı değildir.