Sürekli tümleştirmeyi kullanma

Sürekli tümleştirme (CI), bir ekip üyesi sürüm denetimine kod değişikliklerini her işlediğinde kodu otomatik olarak oluşturma ve test etme işlemidir. Paylaşılan bir deponun ana veya gövde dalının kod işlemesi, tam dalı derlemek, test etmek ve doğrulamak için otomatik derleme sistemini tetikler. CI, bir görevi her tamamladıklarında, geliştiricilerin değişikliklerini paylaşılan sürüm denetimi deposunda birleştirerek kod ve birim testlerini paylaşmalarını teşvik eder.

Yazılım geliştiricileri genellikle yalıtılarak çalışır ve ardından değişikliklerini ekibin kod tabanının geri kalanıyla tümleştirmeleri gerekir. Kodu tümleştirmek için bekleyen günler veya haftalar birçok birleştirme çakışması oluşturabilir, hataları düzeltmek zor olabilir, kod stratejilerini birbirinden ayırabilir ve yinelenen çabalar oluşturabilir. CI, geliştirme ekibinin kodunun paylaşılan sürüm denetimi dalı ile sürekli olarak birleştirilmesini gerektirdiğinden bu sorunlardan kaçınır.

CI, ana dalı güncel tutar. Geliştiriciler, çalışmalarını kısa süreli özellik dallarında yalıtmak için Git gibi modern sürüm denetim sistemlerini kullanabilir. Özellik tamamlandığında geliştirici, özellik dalından ana dala bir çekme isteği gönderir. Çekme isteğinin onaylanması üzerine değişiklikler ana dalda birleştirilir ve özellik dalı silinebilir.

Geliştirme ekipleri bu işlemi her iş öğesi için yineler. Ekipler, ana dalın istenen kalite ölçütlerini korumasını sağlamak için dal ilkeleri oluşturabilir.

Derleme tanımları, ana dala yapılan her işlemenin otomatik derleme ve test işlemini tetiklediğini belirtir. Otomatikleştirilmiş testler, her derlemenin tutarlı kaliteyi koruduğunu doğrular. CI, hataları geliştirme döngüsünün başlarında yakalar ve düzeltilmesi daha ucuz hale gelir. 

CI, modern DevOps platformlarında standart bir özelliktir. GitHub kullanıcıları GitHub Actions aracılığıyla CI uygulayabilir. Azure DevOps kullanıcıları Azure Pipelines'ı kullanabilir.