ฉันอายที่จะบอกว่าฉันเป็น clueless เล็กน้อยในขั้นตอนที่ใช้ในการอัปเดตปลั๊กอินผ่านทาง svn เต่าแม้ว่าปลั๊กอินของฉันจะอยู่ในพื้นที่เก็บข้อมูลมานานหลายปีและมีการดาวน์โหลดมากกว่า 300,000 ครั้ง!
อย่าเป็น SVN อาจเป็นเรื่องยากสำหรับคนจำนวนมาก ... ดังนั้นเรามาดูเรื่องต่าง ๆ ทีละขั้นตอน ...
นี่คือสิ่งที่ฉันทำมาจนถึงตอนนี้
- รหัสการปรับปรุงปลั๊กอินในท้องถิ่นของฉันจนกว่าฉันจะมีความสุขกับมัน
- คัดลอกไฟล์ทั้งหมดที่อยู่ในโฟลเดอร์ปลั๊กอินในเครื่องของฉันไปยัง / trunk / (ไฟล์ปลั๊กอินและ readme มีหมายเลขเวอร์ชั่นที่อัปเดตแล้ว)
- ยอมรับไดเรกทอรีลำต้น
- คลิกขวาที่ไดเรกทอรี trunk และเลือกสร้าง branch / tag และตั้งค่าให้คัดลอกไปยังโฟลเดอร์ใน / tags / ด้วยชื่อเป็นหมายเลขรุ่น
ถูกต้องและในลำดับที่ถูกต้อง? ถ้าไม่เป็นวิธีที่ถูกต้องคืออะไร?
เกือบจะ ...
ขั้นตอนที่คุณควรปฏิบัติตาม:
- โค้ดอัปเดตปลั๊กอินในเครื่องจนกว่าคุณจะพอใจ
- เพิ่มแท็ก "เสถียร" ใน
readme.txt
ไฟล์ของคุณเพื่อให้ตรงกับหมายเลขเวอร์ชันใหม่
- คัดลอกการอัพเดตโลคัลของคุณลงใน
/trunk
ไดเร็กทอรีของโฟลเดอร์ปลั๊กอินโลคัล
- คอมมิทปลั๊กอินทั้งหมดเพื่อบันทึกการเปลี่ยนแปลงไป
/trunk
ยังที่เก็บ
- คลิกขวา
/trunk
และสร้างแท็กใหม่คัดลอกไป/tags/X.X.X
ที่ซึ่ง xxx เป็นเวอร์ชันเดียวกันในแท็ก "เสถียร" ของreadme.txt
(ขั้นตอนที่ 2)
- คอมมิทปลั๊กอินทั้งหมดเพื่อบันทึกแท็ก
ด้วยเหตุผลบางอย่างฉันเปลี่ยนจากรุ่น 2.8.1 เป็น 2.81.2 ในการอัปเดตครั้งล่าสุดของฉันหมายความว่าจะไม่แสดงเป็นการอัปเดตที่มีอยู่ในแผงควบคุมของผู้ที่มีเวอร์ชั่น 2.81.2 ถ้าฉันเปลี่ยนหมายเลขเวอร์ชันถัดไปเป็น 2.9?
การเล่นชนิดหนึ่ง หากคุณยอมรับเวอร์ชัน 2.81.2 เป็นการอัปเดตและผู้ใช้ดาวน์โหลดการอัปเดตนั้นจริง ๆ พวกเขาจะไม่เห็น 2.9 เมื่อคุณเผยแพร่
wordpress พิจารณาว่าเป็นรุ่นล่าสุดอย่างไรและหากผู้ใช้ควรอัปเดตเวอร์ชันของพวกเขา มันทำ version_compare ไหม? ใช้งานได้กับรูปแบบ php รุ่นที่เหมาะสมเท่านั้นใช่ไหม เช่น. 2.9.2 ถือเป็นรุ่นที่ต่ำกว่า 2.81.2? (เพราะอย่างที่ฉันเข้าใจมัน version_compare เริ่มต้นทางซ้ายและเปรียบเทียบสูง / ต่ำสำหรับแต่ละหลักดังนั้น 9 จะถือว่าน้อยกว่า 81)
เผง การเปรียบเทียบรุ่น PHP มาตรฐานจะเห็นว่ารุ่น 2.81.2 เป็นรุ่นที่ใหม่กว่า 2.9 เนื่องจาก 81> 9
ฉันขอแนะนำให้คุณปล่อยรุ่น 3.0 ถัดไปจากนั้นให้ระมัดระวังเป็นอย่างยิ่งเมื่อการกำหนดรุ่นในอนาคตเพื่อป้องกันการพิมพ์ผิดประเภทนี้
หากฉันพบข้อผิดพลาดโง่ ๆ ในโค้ดที่ไม่ส่งผลกระทบต่อการทำงานของปลั๊กอินอาจเป็นตัวพิมพ์หรือรูปภาพเพิ่มเติม ฉันจะแก้ไขและผูกมัดอะไรเพื่อให้การดาวน์โหลดใหม่ของปลั๊กอินมีการเปลี่ยนแปลง?
ฉันต้องแก้ไขลำต้นและโฟลเดอร์แท็กและยืนยันทั้งสองหรือไม่
ถ้าคุณต้องการที่จะทำให้การเปลี่ยนแปลงเล็ก ๆ น้อย ๆ คิดว่ามันเป็นปล่อยการบำรุงรักษา ฉันมักจะทำตามสคีมาของเวอร์ชันนี้:
2 . 1 . 3 . 5
major minor maint build
บิวด์ตัวเลขที่ฉันใช้ภายในเท่านั้นหรือสำหรับรีลีสเบต้า ... คุณแทบจะไม่เห็นหมายเลขบิลด์จากฉันเว้นแต่ว่าฉันจะส่งไฟล์ให้คุณทางอีเมลด้วยตนเอง .
หากฉันสังเกตเห็นข้อผิดพลาดในเวอร์ชันสดฉันจะทำการปะแก้ด่วนและปล่อยเวอร์ชันการบำรุงรักษา สมมติว่าฉันเปิดตัวปลั๊กอินเวอร์ชัน 2.2 และมีคนสังเกตเห็นว่าฉันลืมเรียกใช้ jQuery ในโหมด noConflict () ฉันจะทำการแก้ไขด่วนและออก 2.2.1 ทันที
การเพิ่มขึ้นของเวอร์ชันจะบังคับให้ WordPress จดจำการอัปเดตและมอบการแก้ไขให้กับทุกคนที่ติดตั้งเวอร์ชัน 2.2 แล้ว
ในการปล่อยรุ่นบำรุงรักษาคุณจะต้องทำตามขั้นตอนที่แน่นอนเหมือนกับว่าคุณกำลังปล่อยเวอร์ชั่นเต็มของระบบ ดังนั้นทำการเปลี่ยนแปลงเพิ่มรุ่นreadme.txt
ลงมือกระทำ/trunk
ติดแท็ก ฯลฯ
แต่เมื่อคุณติดแท็กแล้วคุณจะไม่เปลี่ยนอีกเลย คิดว่า/tags
โฟลเดอร์ของคุณค้างในเวลา แต่ละเวอร์ชันในโฟลเดอร์นั้นเป็นสแน็ปช็อตของปลั๊กอินของคุณ ณ เวลาที่ระบุ คุณไม่ควรเปลี่ยนไฟล์ใด ๆ ใน/tags
โฟลเดอร์โดยตรง
หากคุณคิดว่าเป็นความคิดที่ดีลองตีตัวเองที่ด้านหลังศีรษะแล้วปล่อยรุ่นบำรุงรักษาแทน :-)
ดังที่ Piet พูดถึงฉันเขียนชุดคำแนะนำทีละขั้นตอนก่อนหน้านี้ ... แต่ดูเหมือนว่าไซต์จะเสียหน้าจอของฉัน นี่เป็นอีกเวอร์ชั่นของคู่มือทีละขั้นตอนเดียวกันกับภาพหน้าจอจาก Tortoise ที่โฮสต์ในเว็บไซต์ของฉัน: http://eamann.com/tech/how-to-publish-a-wordpress-plugin-subversion/