1
วิธีการบรรลุการเปลี่ยนแปลงอย่างราบรื่นจาก "รูปแบบการจัดเก็บ VCS ขนาดใหญ่สำหรับผลิตภัณฑ์ทั้งหมด" เป็นรูปแบบ "ที่เก็บ VCS ขนาดเล็กจำนวนมาก"
มันเป็นสถานการณ์ทั่วไปที่ codebase ของผลิตภัณฑ์ที่เก็บโดยที่เก็บในระบบ VCS บางระบบจะวิวัฒนาการไปจนถึงจุดที่ codebase นั้นสามารถมองเห็นได้ว่ามีหลายผลิตภัณฑ์ การแยกรหัสฐานข้อมูลออกจากที่เก็บข้อมูล VCS หลายแห่งซึ่งแต่ละแห่งสำหรับผลิตภัณฑ์เดียวสามารถใช้ประโยชน์ได้หลายอย่าง (ดูประโยชน์ของการมีผลิตภัณฑ์ต่อที่เก็บ VCS ผ่านแบบจำลองพื้นที่เก็บข้อมูลด้านล่าง) ในด้านเทคนิคการแยก codebase นั้นเป็นขั้นตอนที่ค่อนข้างง่ายเนื่องจาก VCS ส่วนใหญ่สนับสนุนการดำเนินการนี้ แยก แต่อาจเพิ่มขึ้นปัญหาทางวิศวกรรมที่เกี่ยวข้องกับการทดสอบแบบอัตโนมัติ, การส่งมอบอย่างต่อเนื่องบูรณาการบริการหรือการตรวจสอบ (ดูปัญหาที่เกิดขึ้นโดยแยก.) องค์กรที่วางแผนที่จะดำเนินการแยกดังกล่าวจึงจำเป็นต้องทราบวิธีดำเนินการเปลี่ยนแปลงนี้อย่างราบรื่นที่สุดเท่าที่จะเป็นไปได้นั่นคือโดยไม่รบกวนการส่งมอบและการติดตามตรวจสอบ ขั้นตอนแรกของเรื่องนี้น่าจะเข้าใจแนวคิดของโครงการได้ดีขึ้นและวิธีแยกวิเคราะห์ใน codebase ขนาดใหญ่ ในคำตอบของคำถามนี้ฉันต้องการจะดู: ความพยายามที่จะให้คำจำกัดความการทำงานของผลิตภัณฑ์คืออะไรซึ่งจะให้เกณฑ์ที่ใช้งานได้จริงเพื่อวิเคราะห์ผลิตภัณฑ์ใน codebase ที่มีอยู่ ตามคำจำกัดความการทำงานนี้ทำอย่างละเอียดแผนที่ดำเนินการแยกจริง เราสามารถทำให้ลดความซับซ้อนของสมมติฐานว่า codebase มีการประมวลผลโดยอัตโนมัติSDLCการดำเนินการอย่างต่อเนื่องบูรณาการและต่อเนื่องการจัดส่ง นั่นคือแต่ละสาขาได้รับการตรวจสอบความถูกต้องโดยการทดสอบอัตโนมัติที่นำไปใช้ใน codebase ปัจจุบันและแต่ละการผสานกับสาขา“ เวทมนต์” บางอย่างจะสร้างสิ่งประดิษฐ์ผลิตภัณฑ์ที่ได้รับการทดสอบและปรับใช้ ( สิ่งประดิษฐ์สินค้าเป็นเช่น tarballs แหล่งที่มาของเอกสาร, ซอฟแวร์ไบนารีเทียบท่าภาพ Amis, unikernels.) แผนดังกล่าวเป็นที่น่าพอใจหากจะอธิบายวิธีการหลีกเลี่ยง ปัญหาที่เกิดจากการแยก ขั้นตอนการทดสอบอัตโนมัติเกี่ยวข้องกับที่เก็บเสาหินที่มีอยู่แล้วและที่เก็บแยกอย่างไร ขั้นตอนการปรับใช้อัตโนมัติเกี่ยวข้องกับที่เก็บเสาหินที่มีอยู่แล้วและที่เก็บแยกอย่างไร …