Apa tujuan mereka?
Ambil beban mesin pengembang, sediakan lingkungan yang stabil dan dapat direproduksi untuk build.
Mengapa para pengembang tidak membangun proyek di mesin lokal mereka, atau apakah mereka?
Karena dengan perangkat lunak yang kompleks, luar biasa banyak hal yang bisa salah ketika hanya "menyusun". masalah yang sebenarnya saya temui:
- berbagai jenis pemeriksaan dependensi yang tidak lengkap, mengakibatkan biner tidak diperbarui.
- Publikasikan perintah gagal secara diam-diam, pesan kesalahan di log diabaikan.
- Build termasuk sumber lokal yang belum berkomitmen untuk kontrol sumber (untungnya, belum ada kotak pesan "pelanggan sialan" ..).
- Saat mencoba menghindari masalah di atas dengan membangun dari folder lain, beberapa file diambil dari folder yang salah.
- Folder target tempat biner dikumpulkan berisi file pengembang usang tambahan yang seharusnya tidak disertakan dalam rilis
Kami mendapatkan peningkatan stabilitas yang luar biasa karena semua rilis publik dimulai dengan mendapatkan dari kontrol sumber ke folder kosong. Sebelumnya, ada banyak "masalah lucu" yang "hilang ketika Joe memberi saya DLL baru".
Apakah beberapa proyek begitu besar sehingga dibutuhkan mesin yang lebih bertenaga untuk membuatnya dalam waktu yang wajar?
Apa yang "masuk akal"? Jika saya menjalankan batch build di mesin lokal saya, ada banyak hal yang tidak dapat saya lakukan. Daripada membayar developer untuk menyelesaikan build, bayar IT untuk membeli mesin build yang sebenarnya.
Apakah saya baru saja tidak mengerjakan proyek yang cukup besar?
Ukuran memang salah satu faktor, tapi bukan satu-satunya.