ตรงกันข้ามกับคำว่า "Backporting" หรือไม่?


20

ดังที่ฉันเข้าใจแล้วคำว่า "Backporting" ใช้เพื่ออธิบายการแก้ไขที่ใช้ในเวอร์ชันในอนาคตซึ่งมีการย้ายไปยังเวอร์ชันก่อนหน้าด้วย นิยามของ Wikipediaมีดังต่อไปนี้:

Backportingคือการดำเนินการแก้ไขซอฟต์แวร์บางอย่าง (แพตช์) และนำไปใช้กับซอฟต์แวร์รุ่นเก่ากว่าที่สร้างไว้ในตอนแรก เป็นส่วนหนึ่งของขั้นตอนการบำรุงรักษาในกระบวนการพัฒนาซอฟต์แวร์ ...

ตัวอย่างเช่น:

  • ปัญหาถูกค้นพบและแก้ไขใน V2.0 การแก้ไขเดียวกันถูกพอร์ตและนำไปใช้กับ V1.5

คำนี้เมื่อทำสิ่งนี้ในทิศทางตรงกันข้ามคืออะไร?

  • ปัญหาถูกค้นพบและแก้ไขใน V1.5 การแก้ไขเดียวกันถูกพอร์ตและนำไปใช้กับ V2.0

คำว่า "Backporting" จะยังใช้อยู่หรือไม่ หรือมีคำเช่น "การส่งต่อ" (ซึ่งฟังดูคล้ายกับ "การส่งต่อพอร์ต")?


1
สิ่งที่เกี่ยวกับ "การแพร่กระจาย"?
Gates Bates

คำตอบ:


28

มันเหมือนกับสิ่งที่ตรงกันข้ามกับแบ็กสแลช ทุกคนต้องการเรียกมันว่าสแลช แต่จริงๆแล้วมันเป็นเพียง "สแลช" ตรงกันข้ามกับการย้อนกลับคือ "การย้ายพอร์ต"


"การย้ายพอร์ต" เป็นคำศัพท์ทั่วไปและสามารถนำไปใช้กับการถ่ายโอนรหัสใด ๆ แม้ระหว่างภาษา ใน บริษัท ของฉันเราใช้ "การส่งต่อพอร์ต" สำหรับกรณีเฉพาะที่อธิบายไว้ในคำถามนี้
Marko Topolnik

14

สิ่งนี้ไม่ได้เกิดขึ้นโดยทั่วไปเนื่องจากคุณจะแก้ไขปัญหาดังกล่าวในโค้ดเบส V2.0 และเลือกที่จะแบ็กอัพใหม่ :) mergingในแง่ของการควบคุมเวอร์ชันนี้เรียกว่าเพียงแค่


3
สิ่งนี้จะเกิดขึ้นเนื่องจากการอยู่ร่วมกันของ V1.x และ V2.x และได้รับการดูแลในแบบคู่ขนานซึ่งแต่ละสาขาจะมีการบำรุงรักษาของตนเอง ข้อผิดพลาดข้ามรุ่นสามารถค้นพบและแก้ไขด้านใด ๆ
Marko Topolnik

3
หาก V1.5 เปิดตัวแล้ว แต่ V2.0 จะเปิดตัวในอนาคตคุณต้องแก้ไขปัญหาใน V1.5 ก่อนเนื่องจากลูกค้ารุ่นนี้ใช้อยู่แล้วและต้องการการแก้ไขเร่งด่วนมากขึ้น หลังจากนั้นคุณพอร์ตการแก้ไขเป็น V2.0
user1364368

การจัดการการเผยแพร่ @ user1364368 เป็นเรื่องที่ตั้งฉาก มันเหมาะสมกว่าที่จะแก้ไขข้อผิดพลาดใน codebase เวอร์ชันล่าสุดเนื่องจากมีข้อมูลเพิ่มเติม (ประวัติการเปลี่ยนแปลงของมันเป็นชุดของประวัติการเปลี่ยนแปลงของรุ่นเก่ากว่า) คิดว่ามันเป็นวิธีที่แตกต่าง: ไม่สนใจว่าการเปลี่ยนแปลงนั้นเกี่ยวข้องกับบั๊ก คุณยังต้องการแนะนำการเปลี่ยนแปลงในเวอร์ชั่นที่เก่ากว่าหรือไม่? คุณจะพูดว่าเริ่มพัฒนาคุณสมบัติใน codebase เวอร์ชันเก่าหรือไม่? สิ่งนี้ลดได้อย่างรวดเร็วถึงกลยุทธ์การพัฒนาแบบไร้สาระ
ซ้ำซาก

@ MartinKällmanหัวของ codebase (สำหรับ V2.0) อาจเป็น (เนื่องจากงานพัฒนาปัจจุบัน) ในสถานะที่ไม่อนุญาตให้พัฒนาแก้ไข อาจใช้เวลาหลายวันหรือหลายสัปดาห์จนกว่าหัวหน้าของ codebase จะสะอาดอีกครั้ง แต่คุณไม่สามารถรอได้นานในการแก้ไขเหตุฉุกเฉิน
user1364368

1

ฉันเดาว่าฉันจะใช้คำว่า: การพิสูจน์ในอนาคตหรือความเข้ากันได้ไปข้างหน้า :

จากวิกิพีเดียการพิสูจน์ในอนาคต :

การพิสูจน์ในอนาคต: วลีการพิสูจน์อักษรในอนาคตอธิบายถึงกระบวนการพิเศษในการพยายามคาดการณ์การพัฒนาในอนาคตเพื่อให้สามารถดำเนินการเพื่อลดผลกระทบด้านลบที่อาจเกิดขึ้นและเพื่อคว้าโอกาส

และเข้ากันได้ไปข้างหน้า :

ความเข้ากันได้ไปข้างหน้าหรือความเข้ากันได้ขึ้น (บางครั้งสับสนกับการขยาย) เป็นแนวคิดที่เข้ากันได้สำหรับการออกแบบระบบเช่นกันได้ย้อนหลัง ความเข้ากันได้ไปข้างหน้ามีจุดมุ่งหมายที่ความสามารถของการออกแบบเพื่อรับอินพุตที่ตั้งใจไว้สำหรับตัวเองในภายหลัง

หรือทั้งสอง "การพิสูจน์ในอนาคตผ่านการทำงานร่วมกันไปข้างหน้า"

โอ้ buzzwordry :)


0

การย้อนกลับในทิศทางตรงกันข้ามเป็นเพียงการย้ายพอร์ตแต่ไม่มีเหตุผลที่จะทำเช่นนั้นในบริบทที่คุณอธิบาย


0

ฉันคิดว่าคำว่า "backport" หมายถึงการกระทำของการนำคุณลักษณะของโปรแกรมรุ่นใหม่มาสู่โปรแกรมรุ่นเก่าเพื่อประโยชน์ของการใช้งาน

เนื่องจากคุณไม่ได้พัฒนาฟีเจอร์ใหม่บนเก่า, ปิด, ไม่มีเวอร์ชันย้อนกลับ "ย้อนกลับ" ที่มีอยู่ (ถ้าคุณนิยาม, เวอร์ชันนั้นไม่เก่า)

สิ่งที่คุณกำลังเรียกว่า "forwardport" การแก้ไขปัญหาทั้งในแบบเก่าและแบบใหม่เป็นเพียงตัวแก้ไขข้อบกพร่องหรือโปรแกรมแก้ไข


-1

ไม่มีคำที่ใช้กันทั่วไปสำหรับการรวมชุดการเปลี่ยนแปลงจากสาขาซอฟต์แวร์ที่เก่ากว่าเข้ากับที่ใหม่กว่า นักพัฒนาส่วนใหญ่จะพัฒนาข้อผิดพลาดการแก้ไขในสาขาล่าสุดของซอฟต์แวร์โดยไม่คำนึงถึงข้อผิดพลาดที่พบในรุ่นนี้จะทำเพื่อลดความขัดแย้งผสานตั้งแต่สาขาล่าสุดของการเปลี่ยนแปลงซอฟต์แวร์ บ่อยกว่าสาขาที่เก่ากว่า ข้อผิดพลาดซอฟต์แวร์ใด ๆ ที่ลูกค้ารายงานคือโดยคำจำกัดความที่รายงานในรุ่นก่อนหน้านี้กว่าที่ได้รับการแก้ไขเนื่องจากลูกค้าไม่สามารถเข้าถึงซอฟต์แวร์สาขาล่าสุดของคุณได้


จริงเว้นแต่ลูกค้าของคุณต้องการการแก้ไขทันที
Alex R

-1

ฉันมาที่นี่เพื่อค้นหาคำตอบเพราะฉันกำลังเขียนคอมเม้นท์สำหรับสถานการณ์นี้ เนื่องจากขาดศัพท์แสงที่เกิดขึ้นจริงสำหรับสถานการณ์ทั่วไปนี้ฉันแค่จะสะกดมันออกเป็น "การรวมโปรแกรมแก้ไขด่วนการผลิตเป็นสาขา dev"

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.