ตัวควบคุมแหล่งข้อมูลที่มีไฟล์โซลูชัน
เครื่องมือ SolutionPackager สามารถใช้กับระบบควบคุมแหล่งใดก็ได้ หลังจากคลายบีบอัดไฟล์ .zip ไปยังโฟลเดอร์ เพียงเพิ่มและส่งไฟล์ไปยังระบบควบคุมแหล่งที่มาของคุณ ไฟล์เหล่านี้สามารถซิงโครไนซ์กับคอมพิวเตอร์เครื่องอื่น ซึ่งสามารถบรรจุลงในไฟล์ .zip ที่เหมือนกันได้
สิ่งสำคัญเมื่อใช้ไฟส่วนประกอบที่แยกในตัวควบคุมแหล่งข้อมูลคือ การเพิ่มไฟล์ทั้งหมดลงในตัวควบคุมแหล่งข้อมูล อาจทำให้เกิดการทำซ้ำที่ไม่จำเป็น ดูที่ การอ้างอิงไฟล์ส่วนประกอบของโซลูชัน เพื่อดูว่าไฟล์ใดถูกสร้างขึ้นสำหรับส่วนประกอบแต่ละประเภท และแนะนำให้ใช้ไฟล์ใดในการควบคุมแหล่งที่มา
เนื่องจากการกำหนดค่าเพิ่มเติมและการเปลี่ยนแปลงจำเป็นสำหรับโซลูชัน นักพัฒนาควรแก้ไขหรือปรับแต่งส่วนประกอบด้วยวิธีการที่มีอยู่ส่งออกอีกครั้งเพื่อสร้างไฟล์ .zip และแยกไฟล์โซลูชันที่บีบอัดไว้ในโฟลเดอร์เดียวกัน
สำคัญ
ยกเว้นส่วนที่อธิบายไว้ใน จะแก้ไขไฟล์ที่กำหนดเองเมื่อใด การแก้ไขด้วยตนเองของไฟล์ส่วนประกอบที่คลายบีบอัดและไฟล์ .zip ไม่ได้รับการสนับสนุน
เมื่อเครื่องมือ SolutionPackager แตกไฟล์ส่วนประกอบ จะไม่เขียนทับไฟล์ส่วนประกอบที่มีอยู่ในชื่อเดียวกัน หากเนื้อหาไฟล์เหมือนกัน นอกจากนี้ เครื่องมือให้เกียรติคุณลักษณะอ่านอย่างเดียวในไฟล์ส่วนประกอบที่สร้างคำเตือนในหน้าต่างคอนโซลที่ไฟล์เฉพาะไม่ได้เขียน สิ่งนี้ช่วยให้ผู้ใช้เช็คเอาต์ จากชุดควบคุมแหล่งข้อมูล ชุดของไฟล์ขั้นต่ำที่เปลี่ยนแปลง พารามิเตอร์ /clobber
สามารถใช้เพื่อแทนที่และทำให้ไฟล์แบบอ่านอย่างเดียวถูกเขียนหรือลบได้ พารามิเตอร์ /allowWrite
สามารถใช้ในการประเมินสิ่งที่ส่งผลกระทบต่อการดำเนินการแยกได้โดยไม่ทำให้ไฟล์ใดๆ ที่จะเขียนหรือลบ การใช้งานของพารามิเตอร์ /allowWrite
ที่มีการบันทึก verbose จะมีผลบังคับใช้
หลังจากการดำเนินการแยกเสร็จสมบูรณ์ด้วยชุดไฟล์ที่น้อยที่สุด ซึ่งเช็กเอาต์จากการควบคุมต้นฉบับ ผู้พัฒนาอาจส่งไฟล์ที่ถูกเปลี่ยนกลับไปยังการควบคุมต้นฉบับเช่นเดียวกับไฟล์ต้นฉบับชนิดอื่น
การพัฒนาทีม
เมื่อมีผู้พัฒนาหลายรายกำลังทำงานบนส่วนประกอบโซลูชันเดียวกัน ความขัดแย้งอาจเกิดขึ้นเมื่อการเปลี่ยนแปลงจากสองนักพัฒนาส่งผลให้เกิดการเปลี่ยนแปลงในไฟล์เดียว เหตุการณ์นี้ถูกย่อให้เล็กสุดโดยการแยกส่วนประกอบแต่ละส่วนที่สามารถแก้ไขได้ หรือส่วนประกอบย่อยลงในไฟล์ที่แตกต่างกัน พิจารณาตัวอย่างต่อไปนี้
นักพัฒนาซอฟต์แวร์ A และ B ต่างก็ทำงานบนโซลูชันเดียวกัน
บนคอมพิวเตอร์ที่เป็นอิสระ พวกเขาทั้งสองได้รับแหล่งที่มาล่าสุดของการแก้ปัญหาจากการควบคุมแหล่งที่มา แพ็ค และนำเข้าไฟล์ .zip ของโซลูชันที่ไม่ได้รับการจัดการเป็นองค์กร Microsoft Dataverse อิสระ
นักพัฒนาซอฟต์แวร์ A ปรับแต่งมุมมองของระบบ "ผู้ติดต่อที่ใช้งานอยู่" และฟอร์มหลักสำหรับเอนทิตีผู้ติดต่อ
นักพัฒนาซอฟต์แวร์ B ปรับแต่งฟอร์มหลักสำหรับเอนทิตีลูกค้าองค์กร และเปลี่ยนแปลง "มุมมองการค้นหาผู้ติดต่อ"
นักพัฒนาทั้งสองส่งออกไฟล์ .zip ที่ไม่มีการจัดการโซลูชันและคลายบีบอัด
นักพัฒนา A จะต้องตรวจสอบไฟล์หนึ่งไฟล์สำหรับฟอร์มหลักผู้ติดต่อ และหนึ่งไฟล์สำหรับมุมมอง "ผู้ติดต่อที่ใช้งานอยู่"
นักพัฒนา B จะต้องตรวจสอบไฟล์หนึ่งไฟล์สำหรับฟอร์มหลักลูกค้าองค์กร และหนึ่งไฟล์สำหรับ "มุมมองการค้นหาผู้ติดต่อ"
นักพัฒนาทั้งสองสามารถส่งได้ ตามลำดับใดๆ เนื่องจากการเปลี่ยนแปลงที่เกี่ยวข้องแตะที่ไฟล์แยกกัน
หลังจากการส่งทั้งสองเสร็จสมบูรณ์ พวกเขาสามารถทำซ้ำขั้นตอนที่ 2 จากนั้นทำการเปลี่ยนแปลงต่อไปในองค์กรอิสระของพวกเขา พวกเขาแต่ละคนมีการเปลี่ยนแปลงทั้งสองชุด โดยไม่มีการเขียนทับงานของตนเอง
ตัวอย่างก่อนหน้านี้ใช้งานได้เฉพาะเมื่อมีการเปลี่ยนแปลงไฟล์แยกกัน หลีกเลี่ยงไม่ได้ที่การปรับแต่งอิสระจำเป็นต้องมีการเปลี่ยนแปลงภายในไฟล์เดียว จากตัวอย่างที่แสดงด้านบน ให้พิจารณาว่านักพัฒนา B กำหนดมุมมอง "ผู้ติดต่อที่ใช้งานอยู่" ในขณะที่นักพัฒนา A กำลังปรับแต่งด้วย ในตัวอย่างใหม่นี้ ลำดับของเหตุการณ์มีความสำคัญ กระบวนการที่ถูกต้องในการกระทบยอดสถานการณ์นี้ ซึ่งเขียนออกมา มีดังต่อไปนี้
นักพัฒนาซอฟต์แวร์ A และ B ต่างก็ทำงานบนโซลูชันเดียวกัน
บนคอมพิวเตอร์ที่เป็นอิสระ พวกเขาทั้งสองได้รับแหล่งที่มาล่าสุดของการแก้ปัญหาจากการควบคุมแหล่งที่มา แพ็ค และนำเข้าไฟล์ .zip ของโซลูชันที่ไม่ได้รับการจัดการเป็นองค์กรอิสระ
นักพัฒนาซอฟต์แวร์ A ปรับแต่งมุมมองของระบบ "ผู้ติดต่อที่ใช้งานอยู่" และฟอร์มหลักสำหรับเอนทิตีผู้ติดต่อ
นักพัฒนาซอฟต์แวร์ B ปรับแต่งฟอร์มหลักสำหรับเอนทิตีลูกค้าองค์กร และเปลี่ยนแปลง "ผู้ติดต่อที่ใช้งานอยู่"
นักพัฒนาทั้งสองส่งออกโซลูชันที่ไม่มีการจัดการ ไฟล์ zip และแยกไฟล์
นักพัฒนา A จะต้องตรวจสอบไฟล์หนึ่งไฟล์สำหรับฟอร์มหลักผู้ติดต่อ และหนึ่งไฟล์สำหรับมุมมอง "ผู้ติดต่อที่ใช้งานอยู่"
นักพัฒนา B จะต้องตรวจสอบไฟล์หนึ่งไฟล์สำหรับฟอร์มหลักลูกค้าองค์กร และหนึ่งไฟล์สำหรับมุมมอง "ผู้ติดต่อที่ใช้งานอยู่"
นักพัฒนา A พร้อมก่อน
ก่อนที่นักพัฒนา A จะส่งไปยังการควบคุมต้นทาง พวกเขาจะต้องได้รับแหล่งข้อมูลล่าสุด เพื่อให้แน่ใจว่าจะไม่ขัดแย้งกับการเช็คอินก่อนหน้านี้กับการเปลี่ยนแปลงของพวกเขา
ไม่มีข้อขัดแย้ง ดังนั้นนักพัฒนา A สามารถส่งได้
นักพัฒนา B พร้อมที่จะพัฒนาต่อจากนักพัฒนา A
ก่อนที่นักพัฒนา B จะส่ง พวกเขาจะต้องได้รับแหล่งข้อมูลล่าสุด เพื่อให้แน่ใจว่าจะไม่ขัดแย้งกับการเช็คอินก่อนหน้านี้กับการเปลี่ยนแปลงของพวกเขา
มีข้อขัดแย้ง เนื่องจากไฟล์สำหรับ "ผู้ติดต่อที่ใช้งานอยู่" ได้รับการแก้ไขตั้งแต่ครั้งล่าสุดที่นักพัฒนา B ได้รับข้อมูลล่าสุด
นักพัฒนา B จะต้องตรวจสอบความขัดแย้ง เป็นไปได้ว่าความสามารถของระบบควบคุมต้นทางที่ใช้อาจช่วยกระบวนการนี้; มิฉะนั้นตัวเลือกต่อไปนี้ทั้งหมดสามารถทำงานได้
นักพัฒนา B ผ่านประวัติการควบคุมต้นทาง ถ้ามี จะเห็นว่านักพัฒนา A ทำการเปลี่ยนแปลงก่อนหน้านี้ ผ่านการสื่อสารโดยตรง พวกเขาสามารถหารือการเปลี่ยนแปลงแต่ละครั้ง จากนั้นผู้พัฒนา B จะต้องอัปเดตองค์กรด้วยการแก้ไขที่ตกลงกัน จากนั้นนักพัฒนา B ก็ส่งออก แยก และเขียนทับไฟล์ที่ขัดแย้ง และส่ง
อนุญาตให้การควบคุมต้นทางเขียนทับไฟล์ท้องถิ่นได้ นักพัฒนา B บรรจุโซลูชัน และนำเข้ามาในองค์กรของพวกเขา จากนั้นประเมินสถานะของมุมมอง และปรับแต่งโซลูชันใหม่ตามความจำเป็น ถัดไป นักพัฒนา B สามารถส่งออก แยก และเขียนทับไฟล์ที่ขัดแย้ง
หากการเปลี่ยนแปลงก่อนหน้านี้ไม่จำเป็น นักพัฒนา B อนุญาตให้สำเนาไฟล์ของพวกเขาแทนที่รุ่นในการควบคุมต้นทาง และส่ง
ไม่ว่าจะทำงานในองค์กรที่ใช้ร่วมกันหรือองค์กรอิสระ การพัฒนากลุ่มคนของโซลูชัน Dataverse ต้องการผู้ที่ทำงานอย่างแข็งขันในโซลูชันร่วมกัน เพื่อให้ตระหนักถึงการทำงานของผู้อื่น เครื่องมือ SolutionPackager ไม่ได้ลบความต้องการนี้อย่างสมบูรณ์ แต่จะช่วยให้สามารถผสานการเปลี่ยนแปลงที่ไม่ขัดแย้งในระดับการควบคุมต้นทางได้อย่างง่ายดาย และจะเน้นส่วนประกอบที่กระชับซึ่งมีข้อขัดแย้ง
ส่วนถัดไปเป็นกระบวนการทั่วไปเพื่อใช้เครื่องมือ SolutionPackager ในการควบคุมต้นทาง เมื่อพัฒนากับกลุ่มคน การทำงานเหล่านี้อย่างเท่าเทียมกันกับองค์กรอิสระหรือองค์กรพัฒนาที่ใช้ร่วมกัน แม้ว่ากับองค์กรที่ใช้ร่วมกันการส่งออกและการดึงข้อมูลจะรวมถึงการเปลี่ยนแปลงทั้งหมดที่เกิดขึ้นภายในโซลูชัน ไม่ใช่แค่นักพัฒนาที่ทำการส่งออก ในทำนองเดียวกัน เมื่อนำเข้าไฟล์ .zip วิธีการแก้ปัญหาตามธรรมชาติเพื่อเขียนทับส่วนประกอบทั้งหมดจะเกิดขึ้น
สร้างโซลูชัน
การดำเนินการต่อไปนี้ระบุขั้นตอนทั่วไปที่ใช้เมื่อสร้างโซลูชันครั้งแรก
ในองค์กรที่สะอาด สร้างโซลูชันขึ้นมาบนเซิร์ฟเวอร์ Dataverse แล้วเพิ่มหรือสร้างส่วนประกอบตามความจำเป็น
เมื่อคุณพร้อมที่จะเช็คอิน ให้ทำดังต่อไปนี้
ส่งออกโซลูชันที่ไม่มีการจัดการ
ใช้เครื่องมือ SolutionPackager แยกโซลูชันออกเป็นไฟล์ส่วนประกอบ
จากไฟล์ส่วนประกอบที่คลายบีบอัด ให้เพิ่มไฟล์ที่จำเป็นลงในการควบคุมต้นทาง
ส่งการเปลี่ยนแปลงเหล่านี้ไปยังการควบคุมต้นทาง
ปรับเปลี่ยนโซลูชัน
การดำเนินการต่อไปนี้ระบุขั้นตอนทั่วไปที่ใช้เมื่อปรับเปลี่ยนโซลูชันที่มีอยู่
ซิงโครไนซ์หรือรับแหล่งไฟล์โซลูชันล่าสุด
การใช้เครื่องมือ SolutionPackager แพคไฟล์ปรับเปลี่ยนลงในไฟล์ .zip โซลูชันที่ไม่มีการจัดการ
นำเข้าไฟล์โซลูชันที่ไม่มีการจัดการลงในองค์กร
ปรับแต่งและแก้ไขโซลูชันตามความจำเป็น
เมื่อคุณพร้อมที่จะตรวจสอบการเปลี่ยนแปลงในการควบคุมต้นทาง ให้ทำดังต่อไปนี้
ส่งออกโซลูชันที่ไม่มีการจัดการ
ใช้เครื่องมือ SolutionPackager แยกโซลูชันที่ส่งออกออกเป็นไฟล์ส่วนประกอบ
ซิงโครไนซ์หรือรับแหล่งล่าสุดจากการควบคุมต้นทาง
กระทบยอดหากมีข้อขัดแย้งเกิดขึ้น
ส่งการเปลี่ยนแปลงไปยังการควบคุมต้นทาง
ต้องทำขั้นตอนที่ 2 และ 3 ก่อนที่จะมีการปรับแต่งเพิ่มเติมในองค์กรการพัฒนา ภายในขั้นตอนที่ 5 ต้องดำเนินการตามขั้นตอน b ก่อนขั้นตอน c
ดูเพิ่มเติม
อ้างอิงไฟล์ส่วนประกอบโซลูชัน (SolutionPackager)
เครื่องมือ SolutionPackager