ไม่มีเวลาที่จะเขียนคำตอบของฟีเจอร์เต็มรูปแบบ (ฉันรู้ว่าคนอ่อนแอ) แต่ก็น่าจะมีค่าพอที่จะแชร์ต่อไป (ฉันอาจแก้ไขสิ่งนี้ได้เพราะฉันวางแผนที่จะโพสต์บล็อกด้วย)
นั่นหมายความว่าคุณสามารถมีการตั้งค่า WP แบบอิง trunk / version-branch ซึ่งคุณสามารถแฮ็คได้อย่างสมบูรณ์ ธีมและปลั๊กอิน
เนื่องจากนี่คือหนึ่งที่เก็บข้อมูลอิสระ (โลคัล) คุณสามารถส่งผ่าน ssh ไปยังที่เก็บอื่นเช่นหนึ่ง:
- ที่อยู่บนรีโมตโฮสต์ที่ไซต์ควรถูกปรับใช้ที่ (bare repo)
- นั่นมี hooks เพื่อสร้างที่เก็บอื่นบนโฮสต์นั้นจริง ๆ แล้วผสานในการเปลี่ยนแปลงที่คุณเพิ่งผลัก
นี่คือที่ที่ระบุไว้ในเว็บที่มุ่งเน้น Git เวิร์กโฟลว์ (พฤศจิกายน 2008; โดยโจ Maller)
หากคุณมีตัวสลับการกำหนดค่าที่เลือกรูปธรรมwp-config.php
ตามระบบที่ใช้อยู่คุณสามารถกำหนดค่าโฮสต์ทั้งหมดได้จากส่วนกลาง (การพัฒนาการแสดงสดเพื่อน) ... ภายใน repo
การเปลี่ยนแปลงขั้นต้นใน WP คุณเพียงดึงและรวมในแผนผังย่อย
ปลั๊กอินที่คุณเพิ่งอัปเดตและกระทำ
$ git push remote
การปรับใช้เป็นที่เรียบง่าย
เรียกใช้การสำรองข้อมูลรายวันบนรีโมตโฮสต์สำหรับ git repos ฐานข้อมูลและไฟล์ที่อัปโหลดซึ่งมีราคาถูกเป็นมิตรกับนักพัฒนาและยืดหยุ่น สิ่งนี้ทำงานได้ดีสำหรับการตั้งค่าแบบผู้พัฒนาเดี่ยวและแบบทีมขนาดเล็กเพราะทุกคนสามารถชำระเงินได้จากรีโมทไร้สาย
มีข้อแม้อยู่บ้าง:
ขณะนี้มีรายการตรวจสอบและการตั้งค่าตามที่อธิบายไว้ข้างต้น:
1. ต้องการให้มีสภาพแวดล้อม git ของฉันบนเซิร์ฟเวอร์ของฉันภายในไม่ใช้ Github เพื่อจัดการ repos
Github จะจัดการ repos อัปสตรีมที่นี่ (Wordpress) ไม่ใช่ของคุณเอง
2. การสร้างโดเมนย่อยโดยอัตโนมัติตามการสร้างสาขา git (development.domain.com, ryan.development.domain.com) - อาจมีเชลล์สคริปต์ hook บางตัวที่เหมาะสำหรับสิ่งนี้
การตั้งค่าตามที่อธิบายไว้เป็นวิธีการแยกส่วนที่มีหนึ่ง repo ต่อไซต์ มันสามารถจัดการโฮสต์การพัฒนาได้มากเท่าที่คุณต้องการมันอาจทำงานได้ดีกับการติดตั้งแบบหลายไซต์เพื่อจัดการหลายโดเมน แต่มันจะนับเป็นการตั้งค่า wordpress เดียวในแนวทางนี้
3. Phing สคริปต์ PHP / Shell การจัดการการย้ายฐานข้อมูล (บางอย่างเช่นhttp://interconnectit.com/products/search-and-replace-for-wordpress-databases/ ) เพื่อจัดการการเปลี่ยนฐานข้อมูลแบบอนุกรมเมื่อกด
ไม่จำเป็นต้องใช้ที่นี่เนื่องจากมีรหัสเท่านั้นที่อยู่ภายใต้การควบคุมเวอร์ชันฐานข้อมูลมีความเป็นอิสระระหว่างการพัฒนา (การจัดเตรียม) และการผลิตตามที่ควรจะเป็น
คุณอาจกำลังมองหาสคริปต์การติดตั้งที่จะทำการย้ายโดเมนให้ถูกต้อง แต่แม้จะมีรหัสที่ดีกว่า (มีให้) จัดการกับการค้นหาข้อมูลแบบอนุกรมและแทนที่ในการตั้งค่านี้ที่นี่ปกติแล้วคุณไม่จำเป็นต้องผลักดันการเปลี่ยนแปลง สำหรับกรณีทดสอบคุณสามารถสร้างเนื้อหาในฐานข้อมูลการพัฒนาได้อย่างรวดเร็วซึ่งเป็นปัญหาที่เล็กที่สุด (จากประสบการณ์จริงของฉันคุณอาจแตกต่างกัน แต่ฉันขอแนะนำให้เก็บหัวข้อที่เกี่ยวข้องกับการย้ายฐานข้อมูลตามคำถามของมัน เป็นเจ้าของที่นี่บนเว็บไซต์ - แต่โปรดถามพวกเขา)
ฉันทำงานประมาณ 200 ไซต์บนเซิร์ฟเวอร์ของฉันเองและต้องการเริ่มนำไซต์เหล่านี้ไปใช้ในสภาพแวดล้อมของเวิร์กโฟลว์คอมไพล์ที่แข็งแกร่งดังนั้นฉันจึงสามารถปรับปรุงงานของฉันให้ดียิ่งขึ้น
ฉันไม่สามารถจินตนาการได้ว่าเว็บไซต์เหล่านั้นจะกลายเป็นอย่างไรภายใต้สภาพแวดล้อมเวิร์กโฟลว์คอมไพล์สตริง บางทีสคริปต์การกำหนดค่าและข้อมูลการกำหนดค่าที่คุณจัดการที่นี่จะถูกเก็บไว้ภายใต้การควบคุมเวอร์ชัน git นั่นอาจเป็นเหตุผล ฉันคิดว่ามันไม่สมเหตุสมผลเลยที่จะเก็บเว็บไซต์ทั้งหมดไว้ใน repo คอมไพล์เดียว บางทีอาจไม่ได้เป็นหนึ่งในนั้นเพราะสิ่งที่ฉันระบุไว้ด้านบนมีไว้สำหรับไซต์ที่คุณพัฒนา (รวมถึงรหัส core WP) ไม่ใช่เฉพาะสำหรับงานติดตั้ง ดังนั้นก่อนอื่นคุณต้องสร้างแผนที่เล็ก ๆ น้อย ๆ ของ 200 เว็บไซต์เหล่านั้นและวิธีที่พวกเขามีปฏิสัมพันธ์กันและสิ่งที่แพคเกจ (WP core, ปลั๊กอิน, ธีม) เว็บไซต์เหล่านั้นประกอบด้วย สิ่งแรกคือการสร้างสเปรดชีต / เมทริกซ์และวางไซต์ทั้งหมดไว้
จากนั้นคุณสามารถบันทึกเป็น CSV วางไว้ภายใต้การควบคุมเวอร์ชันและทำให้สคริปต์การปรับใช้ทำงานตามไฟล์นั้น
และถ้าฉันได้เรียนรู้บางอย่างเกี่ยวกับงานอัตโนมัติ: ทำตามปรัชญาของ Unix ใช้เครื่องมือที่มีอยู่แล้วและใช้งานได้ดี (ควรใช้เวลาอ่านครึ่งวันเกี่ยวกับคำสั่งบางคำสั่งแล้วพยายามค้นหาทางเลือกอื่นเพราะงานส่วนใหญ่ปัญหาได้รับแล้ว แก้ไขแล้ว) และเน้นเครื่องมือบรรทัดคำสั่ง พวกมันแข็งแกร่งที่สุด