Benim şirkette bizim iş web sitesi için 8 web geliştiricileri bir grup var (tamamen PHP ile yazılmış, ama bu önemli değil). Gruptaki herkesin aynı anda farklı projeler üzerinde çalışıyor ve onların görevi ile bitti zaman, hemen (neden iş bu gün hızlı hareket ediyor) dağıtın.
Şu anda gelişme tüm geliştiricileri (uzakta diğerlerinden dosyaları "kilitlemek" için RCS kullanarak) aynı kod tabanı üzerinde çalışan ile bir paylaşılan bir sunucuda olur. Dağıtım zamanı geldiğinde, değişen dosyaları bir "hazırlama" sunucu üzerine kopyalanır ve daha sonra bir senkronizasyon script diğer 9 sunuculara dağılmış nerede bizim ana sunucunuza dosyaları yükler vardır.
Oldukça mutlu, web dev takım (Bize bir süre için şikayet sonra) sürecini iyileştirmek amacıyla yardım için bize sordu ve şöyle şimdi dev ortamı kurmak için bizim fikir:
- Sanal dizinleri ile bir dev sunucu, herkes kendi kod temeli vardır ki
- SVN (veya başka bir VCS) değişiklikleri izlemek için
- kodunda teslim son tutan test için merkezi bir sunucu
Şimdi soru şudur: Nasıl diğer projelerden arızî yükleme hata olmadan sunucuya değiştirilmiş dosyaları dağıtmak için yönetirim? Benim ilk fikir basitçe deposundan son revizyon ihracat, ancak bu dosyaları üzerinde tam kontrol vermezdim oldu.
Nasıl böyle bir durum yönetirim? Eğer eylem dağıtım komut ne tür var mı?
(Özel bir meydan okuma olarak: web sitesi organik son 10 yılda büyüdü, bu yüzden projeleri küçük parçalar halinde bölmek değil, belirli bir özelliği dosyaların tüm dizin ağacı yayılmıştır.)