ภาพรวม + คำถาม
ฉันต้องการตัวควบคุมข้อมูลเมตาของระบบไฟล์etckeeper สำหรับไดเร็กตอรี่ที่ไม่ใช่ / etc, ซึ่งควบคุมโดย git. ไดเรกทอรีบ้านและเว็บแอปอื่น ๆ มีความอ่อนไหวต่อเมตาดาต้า (ความเป็นเจ้าของไฟล์, ACL, การอนุญาต) สิ่งนี้มีประโยชน์ / สำคัญอย่างยิ่งในการจ้าง git สำหรับการปรับใช้เซิร์ฟเวอร์อัตโนมัติ (พร้อมด้วยเครื่องมือเช่นFabric ) เหนือสิ่งอื่นใด ฉันต้องการที่จะใช้ความสามารถของ etckeeper เหมือน reirs บน dirs กล่าวทั้งกับตัวเอง etckeeper หรืออย่างอื่น
ทุกคนสามารถแนะนำเคล็ดลับ / เทคนิค / วิธีแก้ปัญหาในการทำงานเพื่อให้บริการอย่างใดอย่างหนึ่งหรือทั้งสองอย่างต่อไปนี้:
- ใช้เอ็นจิ้น etckeeper (สนใจเฉพาะความสามารถของ git-etckeeper เท่านั้น) กับ non- / etc, git-directory ที่ควบคุม (สามารถสันนิษฐานได้ว่าอย่างน้อย Debian / Ubuntu Linux; ต้องการการสนับสนุนMacOSX / homebrewหากเป็นไปได้)
- ขยาย git ด้วยการรองรับข้อมูลเมตา (นอกเหนือจากสิ่งที่เรียบง่ายเกินกว่าเช่นgit-cache-meta ) เพื่อรองรับความสามารถในการใช้เครื่องหมายคล้ายกันหรือดีกว่า?
รายละเอียดเพิ่มเติมพื้นหลัง
มีความสนใจที่เพิ่มขึ้นในเรื่องการขยายการคอมไพล์ที่มีความสามารถระบบแฟ้มข้อมูลเมตาของการควบคุม เครื่องมือ "metadata" ของ etckeeper นั้นดูมีประสิทธิภาพและน่าเชื่อถือในประสบการณ์ของฉันและetckeeper ก็ดูเหมือนจะเป็นที่นิยมของผู้อื่นเช่นกัน MetaStore น้อยดังนั้นอย่างน้อยในส่วนหนึ่งเนื่องจากMetaStore ของ / ความท้าทายผสานไม่เป็นมิตรไม่ใช่ข้อความตาม เพิ่มเติม etckeeper ดูเหมือนจะเริ่มต้นด้วยแกนที่ใช้ metastore แต่เปลี่ยนไปเป็นของตัวเอง (เก็งกำไร?)
เห็นได้ชัดว่านี่มีการอ้างอิงเฉพาะระบบปฏิบัติการ / ระบบไฟล์ (เช่นไม่พยายามปรับใช้อัตโนมัติบน Windows) แนะนำตัวเลือกเพิ่มเติมส่วนขยาย (ถ้าเป็น "ส่วนขยายดั้งเดิม") ของ git ที่เปิดใช้งานตามความต้องการโดยผู้ใช้ที่เข้าใจผลของการแตกข้ามแพลตฟอร์มดังนั้นพฤติกรรมดั้งเดิมไม่ทำลายความเป็นมิตรข้ามแพลตฟอร์มของ git โดยค่าเริ่มต้น เพิ่มเติมไม่จำเป็นต้องบันทึกเมตาดาต้า unix / ดาร์วิน / ฯลฯ ฟุ่มเฟือย (เช่น ACLs); ผู้ใช้ / กลุ่ม / พื้นฐานอื่น ๆ และความเป็นเจ้าของผู้ใช้ / กลุ่มจะไม่เป็นไร (สิ่งเหล่านี้เป็นสิ่งเดียวที่ทำลายสิ่งต่าง ๆ ใน "การควบคุม / นโยบายความปลอดภัย / ช่องโหว่" ในขณะนี้) ระบบปฏิบัติการเฉพาะที่ฉันกำหนดเป้าหมายไว้ด้านหน้า: Debian, Ubuntu, MacOS 10.6+ ในภายหลัง: Redhat's (CentOS, Fedora, RHEL), SUSE, Linux อื่น ๆ และ * BSD (FreeBSD, NetBSD, OpenBSD) อย่าเห็นความต้องการ / แอพพลิเคชั่นสำหรับ Windows / VMS (แม้ว่า VMS จะเป็นมิตรกับ posix) หรือระบบปฏิบัติการอื่น ๆ ที่ไม่เหมือนยูนิกซ์ที่จุดใด ๆ ที่มองเห็นได้
ดูเพิ่มเติม: พื้นหลังที่มีอยู่ก่อนคอมไพล์ไฟล์ข้อมูลเมตา / ประเภทไฟล์ความสามารถในการติดตามที่คำถาม StackOverflow นี้ผมโพสต์
พัฒนาข้อกำหนดสำหรับโครงการใหม่หรือไม่?
นอกจากนี้: หากใครสนใจที่จะพัฒนาข้อกำหนดสำหรับความสามารถดังกล่าวฉันมั่นใจว่าสามารถพิสูจน์ได้ว่ามีประโยชน์โดยเฉพาะอย่างยิ่งสำหรับโครงการใหม่ / ไม่สมบูรณ์ที่จะกล่าวถึงข้างต้น