1 การระบุเวอร์ชัน
Rails ปฏิบัติตามเวอร์ชันที่เลื่อนไปของ semver:
Patch Z
เฉพาะการแก้ไขข้อบกพร่องเท่านั้น ไม่มีการเปลี่ยนแปลง API หรือคุณสมบัติใหม่ ยกเว้นกรณีที่จำเป็นต้องแก้ไขด้านความปลอดภัย
Minor Y
คุณสมบัติใหม่ อาจมีการเปลี่ยนแปลง API (เป็นเวอร์ชันหลักของ Semver) การเปลี่ยนแปลงที่ทำให้เกิดปัญหาจะมีการแจ้งเตือนการเลิกใช้ในเวอร์ชันก่อนหน้าหรือเวอร์ชันหลัก
Major X
คุณสมบัติใหม่ อาจมีการเปลี่ยนแปลง API โดยทั่วไปการแตกต่างระหว่างเวอร์ชันย่อยและเวอร์ชันหลักของ Rails คือความสำคัญของการเปลี่ยนแปลงที่ทำให้เกิดปัญหา และมักจะสงวนไว้สำหรับโอกาสพิเศษ
2 คุณสมบัติใหม่
คุณสมบัติใหม่จะถูกเพิ่มเฉพาะในสาขาหลักและจะไม่สามารถใช้งานในเวอร์ชันย่อยได้
3 การแก้ไขข้อบกพร่อง
เฉพาะชุดเวอร์ชันล่าสุดเท่านั้นที่จะได้รับการแก้ไขข้อบกพร่อง การแก้ไขข้อบกพร่องมักถูกเพิ่มในสาขาหลักและถูกย้อนกลับไปยังสาขา x-y-stable ของชุดเวอร์ชันล่าสุดหากมีความจำเป็นเพียงพอ เมื่อมีการเพิ่มข้อบกพร่องเพียงพอในสาขา x-y-stable จะสร้างเวอร์ชันแพทช์ใหม่จากนั้น ตัวอย่างเช่น เวอร์ชันแพทช์ 1.2.2 เช่นนี้จะถูกสร้างขึ้นจากสาขา 1-2-stable
ในสถานการณ์พิเศษ ในกรณีที่มีคนจากทีมคอร์สตกลงที่จะสนับสนุนชุดเวอร์ชันเพิ่มเติม จะรวมอยู่ในรายการชุดเวอร์ชันที่ได้รับการสนับสนุน
สำหรับชุดเวอร์ชันที่ไม่ได้รับการสนับสนุน การแก้ไขข้อบกพร่องอาจจะตกลงกับสาขาที่มีความเสถียร แต่จะไม่มีการเปิดเผยในเวอร์ชันอย่างเป็นทางการ แนะนำให้ชี้ที่แอปพลิเคชันของคุณไปยังสาขาที่มีความเสถียรโดยใช้ Git สำหรับเวอร์ชันที่ไม่ได้รับการสนับสนุน
ชุดเวอร์ชันที่รวมอยู่ในปัจจุบัน: 7.1.Z
4 ปัญหาด้านความปลอดภัย
ชุดเวอร์ชันปัจจุบันและชุดเวอร์ชันก่อนหน้าที่สุดจะได้รับการแก้ไขและเวอร์ชันใหม่ในกรณีของปัญหาด้านความปลอดภัย
การสร้างเวอร์ชันเหล่านี้จะเป็นการนำเวอร์ชันที่ปล่อยออกมาล่าสุด นำไปใช้กับแพทช์ด้านความปลอดภัย และปล่อยออกมา แพทช์เหล่านั้นจะถูกนำไปใช้ที่ส่วนท้ายของสาขา x-y-stable ตัวอย่างเช่น เวอร์ชันแพทช์ด้านความปลอดภัย 1.2.2.1 จะถูกสร้างขึ้นจาก 1.2.2 และจากนั้นถูกเพิ่มไปยังส่วนท้ายของ 1-2-stable นี้หมายความว่าการอัปเกรดเวอร์ชันด้านความปลอดภัยจะง่ายหากคุณกำลังเรียกใช้เวอร์ชันล่าสุดของ Rails
เฉพาะแพทช์ด้านความปลอดภัยเท่านั้นที่จะถูกนำเอาไว้ในการปล่อยเวอร์ชันด้านความปลอดภัย การแก้ไขข้อบกพร่องที่ไม่เกี่ยวข้องกับความปลอดภัยที่เกิดจากแพทช์ด้านความปลอดภัยอาจถูกเผยแพร่ในสาขา x-y-stable ของเวอร์ชันและจะถูกปล่อยออกมาเป็น gem ใหม่ตามนโยบายการแก้ไขข้อบกพร่อง
การตัดเวอร์ชันด้านความปลอดภัยจะถูกตัดจากสาขา/แท็กความปลอดภัยล่าสุด มิฉะนั้นอาจมีการเปลี่ยนแปลงที่ทำให้เกิดปัญหาในการปล่อยเวอร์ชันด้านความปลอดภัย การปล่อยเวอร์ชันด้านความปลอดภัยควรมีเฉพาะการเปลี่ยนแปลงที่จำเป็นเพื่อให้แอปพลิเคชันปลอดภัยมากขึ้น
ชุดเวอร์ชันที่รวมอยู่ในปัจจุบัน: 7.1.Z
, 7.0.Z
, 6.1.Z
5 ปัญหาด้านความปลอดภัยรุนแรง
สำหรับปัญหาด้านความปลอดภัยรุนแรง ทุกเวอร์ชันในชุดเวอร์ชันหลักปัจจุบัน และเวอร์ชันล่าสุดในชุดเวอร์ชันหลักก่อนหน้าจะได้รับการแก้ไขและเวอร์ชันใหม่ การจัดหมวดหมู่ปัญหาด้านความปลอดภัยจะถูกตัดสินโดยทีมคอร์สตกลง
ชุดเวอร์ชันที่รวมอยู่ในปัจจุบัน: 7.1.Z
, 7.0.Z
, 6.1.Z
6 ชุดเวอร์ชันที่ไม่ได้รับการสนับสนุน
เมื่อชุดเวอร์ชันไม่ได้รับการสนับสนุนแล้ว คุณต้องรับผิดชอบด้วยตนเองในการจัดการข้อบกพร่องและปัญหาด้านความปลอดภัย เราอาจจะให้การย้อนกลับของการแก้ไขและรวมพวกเขา อย่างไรก็ตามจะไม่มีการปล่อยเวอร์ชันใหม่ เราขอแนะนำให้ชี้ที่แอปพลิเคชันของคุณไปยังสาขาที่มีความเสถียรโดยใช้ Git หากคุณไม่รู้สึกสบายในการบำรุงรักษาเวอร์ชันของคุณเอง คุณควรอัปเกรดไปยังเวอร์ชันที่ได้รับการสนับสนุน
7 แพคเกจ NPM
เนื่องจากข้อจำกัดของ npm เราไม่สามารถใช้ตัวเลขที่ 4 สำหรับการปล่อยเวอร์ชันด้านความปลอดภัยของ [แพคเกจ N
ข้อเสนอแนะ
คุณสามารถช่วยปรับปรุงคุณภาพของคู่มือนี้ได้
กรุณาช่วยเพิ่มเติมหากพบข้อผิดพลาดหรือข้อผิดพลาดทางความจริง เพื่อเริ่มต้นคุณสามารถอ่านส่วน การสนับสนุนเอกสาร ของเราได้
คุณอาจพบเนื้อหาที่ไม่สมบูรณ์หรือเนื้อหาที่ไม่ได้อัปเดต กรุณาเพิ่มเอกสารที่ขาดหายไปสำหรับเนื้อหาหลัก โปรดตรวจสอบ Edge Guides ก่อนเพื่อตรวจสอบ ว่าปัญหาได้รับการแก้ไขหรือไม่ในสาขาหลัก ตรวจสอบ คู่มือแนวทาง Ruby on Rails เพื่อดูรูปแบบและกฎเกณฑ์
หากคุณพบข้อผิดพลาดแต่ไม่สามารถแก้ไขได้เอง กรุณา เปิดปัญหา.
และสุดท้าย การสนทนาใด ๆ เกี่ยวกับ Ruby on Rails เอกสารยินดีต้อนรับที่สุดใน เว็บบอร์ดอย่างเป็นทางการของ Ruby on Rails.