คำถามติดแท็ก branch

4
วิธีกำจัดการพัฒนาสาขาเพื่อให้การไหลของ Git ง่ายขึ้น
ในโครงการพัฒนาอย่างต่อเนื่องเว็บ (ไม่ใช่สินค้า) ขณะนี้เรามียุทธศาสตร์ต่อไปนี้แยกตามประมาณในการไหลเวียนของคอมไพล์ : พัฒนาสาขา: รุ่นที่ใช้งานล่าสุด สาขาหลัก: รุ่นที่จะวางจำหน่าย / รุ่นที่วางจำหน่าย ฟีเจอร์ต่าง ๆ : ฟีเจอร์ในการพัฒนา กิ่งก้านของโปรแกรมแก้ไขด่วน: การแก้ไขข้อบกพร่องเร่งด่วนในรุ่นที่วางจำหน่าย ปริญญาโทจะอ่านเพียงการปรับปรุงผ่านการร้องขอดึงจากการพัฒนาหรือสาขาแก้ไขด่วน การอัปเดตแต่ละครั้งจะส่งผลให้ตัวเลือกการวางจำหน่ายถูกสร้างและปรับใช้กับระบบการจัดเตรียม ผู้สมัครที่วางจำหน่ายจะถูกนำไปใช้กับการผลิตหลังจากการอนุมัติด้วยตนเอง สาขาคุณลักษณะถูกสร้างขึ้นตามการพัฒนาหรือจากการคอมมิทล่าสุดที่รวมเข้ากับมาสเตอร์ คำขอดึงจากสาขาคุณลักษณะเพื่อการพัฒนาถูกสร้างขึ้นปรับใช้กับระบบทดสอบฟรีที่ดำเนินการทดสอบการรวมและการทดสอบการยอมรับ (อัตโนมัติ & คู่มือ) เมื่อทดสอบและตรวจสอบเรียบร้อยแล้ว PR จะถูกรวมเข้าด้วยกันเพื่อที่จะกลายเป็นส่วนหนึ่งของการเปิดตัวครั้งต่อไป (เช่นผสานจากการพัฒนาไปสู่การควบคุมหลัก) เป้าหมายของฉัน ฉันต้องการทำให้สิ่งนี้ง่ายขึ้นและกำจัดสาขาที่กำลังพัฒนา สาขาที่พัฒนาแล้วส่วนใหญ่มีเหตุผลทางประวัติศาสตร์และเนื่องจากมันเป็นรุ่นที่ผ่านการทดสอบมาอย่างยาวนานฉันคิดว่ามันไม่จำเป็นที่จะต้องแยกมันออกจากมาสเตอร์ การนำออกจะทำให้ขั้นตอนการวางจำหน่ายง่ายขึ้นเพราะจะไม่มีการผสานเพิ่มเติมอีกต่อไป ฉันมีข้อ จำกัด ดังต่อไปนี้: กำหนดวางจำหน่ายและไม่ควรทำแบบอัตโนมัติทั้งหมด ในขณะที่สาขาฟีเจอร์มักมีอายุสั้น แต่บางช่วงก็ยังคงไม่ได้รับการบำรุงเป็นเวลาหลายสัปดาห์ (เช่นการออกแบบใหม่) แต่ต้องมีการทดสอบเช่นกัน บางครั้งควรปล่อยคุณลักษณะเดียวนอกรุ่นปกติอย่างมีประสิทธิภาพเปลี่ยนเป็นโปรแกรมแก้ไขด่วน ด้วยกลยุทธ์ปัจจุบันฉันสามารถรีบูทฟีเจอร์และรวมเข้ากับมาสเตอร์โดยตรง มันก็เกิดขึ้นที่เราจำเป็นต้องระงับคุณสมบัติหลังจากการทดสอบการยอมรับกับระบบภายนอกเกี่ยวกับการแสดงละครล้มเหลว ที่ฉันไม่แน่ใจเกี่ยวกับการเปลี่ยนแปลง: ขณะนี้ฉันกำลังสร้างคำขอดึงสำหรับการทดสอบและผสานความมุ่งมั่นสำหรับการเปิดตัว ฉันสามารถรวมสิ่งนี้ได้ไหม วิธีจัดการกับโปรแกรมแก้ไขด่วนเมื่อต้นแบบอยู่ข้างหน้าของรุ่นล่าสุด ฉันควรสร้างและปรับใช้การวางจำหน่ายโดยตรงจากสาขาโปรแกรมแก้ไขด่วนหรือไม่ มีวิธีที่เหมาะสมในการจัดการกับคุณสมบัติที่ควรแยกออกจากการวางจำหน่ายหลังจากที่รวมกันแล้วหรือไม่ สาขาที่พัฒนาแยกต่างหากเป็นข้อได้เปรียบสำหรับกรณีเหล่านี้หรือไม่? …

4
วิธีการเปลี่ยนจากความเป็นจริงของการแตกแขนงที่ซับซ้อนไปเป็นรูปแบบสาขาเดียว?
ในองค์กรขนาดใหญ่การใช้วิธีการน้ำตกมักจะส่งผลให้เกิดโครงสร้างการแตกแขนงที่ซับซ้อนมาก (aka spagetti สาขา ) กลยุทธ์การแยกสาขาใดบ้างที่สามารถใช้ในการเปลี่ยนจากความเป็นจริงของการแตกแขนงที่ซับซ้อนไปเป็นโมเดลสาขาเดียวเช่นการพัฒนาแบบอิงลำตัว? ปรับปรุง: เพื่อชี้แจงคำถามที่เกี่ยวกับการโยกย้าย / การเปลี่ยนแปลงตัวเองไม่เกี่ยวกับวิธีการก่อนและหลังซึ่งค่อนข้างชัดเจน ไม่น่าจะเป็น "ที่ EOB วันนี้เรายังคงเป็นน้ำตกที่มีสาขากว่าพันล้านแห่ง แต่พรุ่งนี้สิ่งแรกที่เราจะเปลี่ยนไปใช้ CI แบบสาขาเดียว"

2
จะหลีกเลี่ยงการแยกสาขากับองค์กรขนาดใหญ่ได้อย่างไร
คุณจะหลีกเลี่ยงสถานการณ์การแยกสาขาเมื่อทำงานกับองค์กรขนาดใหญ่ได้อย่างไร เราทำงานร่วมกับองค์กรทางการเงินขนาดใหญ่จำนวนหนึ่งซึ่งวิธีการนี้ไม่ได้ทำการอัพเดทซอฟต์แวร์ แต่มีเพียงแพตช์ความปลอดภัยสูง / วิกฤติและฟังก์ชั่นการใช้งานตามความต้องการ องค์กรเหล่านี้จะใช้โปรแกรมแก้ไขและปล่อยที่กำหนดเองเท่านั้นในระหว่างการปรับปรุงที่สำคัญ การอัปเดตที่สำคัญอาจแตกต่างกันไปหลายปีและมีค่าใช้จ่ายสูง วิธีนี้ทำให้เรา (บ้านซอฟต์แวร์) มีสาขารหัสของเราต่อลูกค้ารายใหญ่ซึ่งมีค่าใช้จ่ายและความไร้ประสิทธิภาพทั้งหมดของการแยกสาขาในระยะยาว คำถามของฉันต่อชุมชนคือ: คุณเคยประสบกับวิธีการยอมรับการอัพเดทที่คล้ายกันจากลูกค้าของคุณหรือไม่ คุณมีข้อเสนอแนะอะไรบ้างที่จะช่วยให้ทำงานกับวิธีนี้ได้? คุณมีข้อเสนอแนะอะไรบ้างที่จะช่วยเปลี่ยนวิธีการขององค์กรในการอัปเดตซอฟต์แวร์
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.