ไฟล์ใดที่ควบคุมเวอร์ชันสำหรับโครงการ Altium PCB


12

ฉันกำลังพยายามสร้าง.gitignoreไฟล์สำหรับโครงการ Altium ที่มีเวอร์ชันด้วย git และเก็บไว้ใน GitHub จากระยะไกล

ฉันไม่ต้องการให้เพื่อนร่วมทีมต่อสู้อย่างต่อเนื่องโดยต้องอัปเดตทุกครั้งที่ฉันทำการเปลี่ยนแปลงเล็กน้อยเช่นการตรวจสอบกฎการออกแบบใหม่หรือรวบรวมโครงการใหม่อีกครั้ง ไฟล์ขั้นต่ำที่ฉันควรเพิ่มในระบบควบคุมเวอร์ชันคืออะไร?

# Ignore the subdirectory where output job outputs are placed
GeneratedOutput

# Ignore autosave files (anything that begins with a tilde)
~*

# What else to ignore?

คำตอบ:


11

นี่คือรายการที่ฉันใช้ในการจัดการไฟล์ Altium ใน SVN ฉันแน่ใจว่าพวกเขาสามารถแปลงเป็นรูปแบบ. gignignore (ถ้าจำเป็น) แม้ไม่มีปัญหามากเกินไป:

*/History/*
*.PrjPCBStructure
*.SchDocPreview
*.PcbDocPreview
*\__Previews
*\History
*.PrjPcbStructure
*~$*

โปรดทราบว่าฉันไม่เห็นด้วยกับ @KyranF คุณไม่ต้องการเก็บถาวรprjpcbstructureไฟล์ พวกเขาจะสร้างใหม่ทั้งหมดทุกครั้งที่คุณรวบรวมโครงการและไม่มีอะไรในนั้น พวกมันใช้งานได้เพียงแค่สร้างสิ่งประดิษฐ์และสิ่งเหล่านั้นไม่ควรเกิดขึ้น

นอกจากนี้ฉันมีตูดของฉันบันทึกสองสามครั้งโดยสิ่งประวัติศาสตร์ถ้าไม่กี่ร้อย MB ของการจัดเก็บในท้องถิ่นเป็นปัญหาคุณต้อง 1 ฮาร์ดไดรฟ์ที่ใหญ่กว่าและ 2 ในการแก้ไขลำดับความสำคัญของคุณถ้าไม่กี่ร้อย MB คือการพิจารณาอย่างจริงจังเลย

ฉันไม่เห็นด้วยอย่างยิ่งเกี่ยวกับการยอมรับ gerbers หากคุณพยายามเชื่อมโยง PCB ที่แท้จริงกับชุดของไฟล์การบังคับให้เกอร์เบอร์นั้นเป็นสิ่งจำเป็นโดยเฉพาะเมื่อสิ่งผิดปกติในการส่งออกและ / หรือขั้นตอนการประมวลผลของเกอร์เบอร์ เป็นที่ยอมรับว่าคุณไม่ควรคอมมาไฟล์ gerber ทุกวัน (คุณไม่ควรที่จะสร้างมันทุกวัน) แต่คุณควรจะยอมรับ (และติดแท็กในอุดมคติ) gerbers แต่ละชุดที่คุณปล่อยให้ผลิต


ฉันคิดว่า*~$*อาจเป็นตัวบ่งชี้ไฟล์ชั่วคราวสำหรับSolidWorksไม่ใช่ Altium


ฉันเดา gerbers ที่สร้างขึ้นสำหรับ "รุ่น" เฉพาะของ PcbDoc เป็นสิ่งสำคัญที่จะต้องอยู่ด้วยกันภายใต้การควบคุมเวอร์ชันจุดที่ดี และฉันไม่แน่ใจเกี่ยวกับไฟล์ prjpcbstructure แต่ดูเหมือนว่าสมเหตุสมผลสำหรับฉันเนื่องจากอาจรวมถึงข้อมูลเกี่ยวกับไฟล์ / แหล่งข้อมูลภายนอกที่ใช้ในระหว่างการรวบรวมโครงการนั้นและอาจช่วยวินิจฉัยไฟล์ที่ขาดหายไปในภายหลัง
KyranF

เมื่อคุณส่งบอร์ดออกเพื่อการผลิตเป็นความคิดที่ดีที่จะซิปทั้งโฟลเดอร์ของโครงการ PCB (ลบประวัติและไฟล์อึอื่น ๆ ) และตรึงไว้ในสถานะที่มันถูกส่งออก - ฉันได้ทำสิ่งนี้แล้ว สองสามครั้งและลืมไปสองสามครั้งและหวังว่าฉันจะสอดคล้องกันมากขึ้น
KyranF

@KyranF - ไฟล์ altium จำนวนมากคือ ASCII รวมถึง.PrjPcbStructureไฟล์ คุณสามารถดูและดูสิ่งที่พวกเขาเข้ารหัส
Connor Wolf

ยุติธรรมพอฉันจะมี Lookie!
KyranF

ไฟล์. PrjPcb นั้นเป็น ASCII ซึ่งจะสะดวกถ้าคุณย้ายสิ่งต่าง ๆ คุณสามารถแก้ไขเนื้อหาไฟล์ได้ด้วยตนเอง
Connor Wolf

3

นอกเหนือจากคำตอบอื่น ๆ :

  • อย่าทำรุ่น

    • ไฟล์ที่ชัดเจน: ผลลัพธ์ที่สร้างขึ้นทั้งหมดเช่น BOM ไฟล์รายงานและอื่น ๆ
    • .Dat - สร้างขึ้นใหม่เป็นส่วนหนึ่งของการสร้าง BOM ดูเหมือนจะมีข้อมูลซ้ำซ้อนเท่านั้น
    • .TLT - ข้อมูลโครงร่าง GUI
    • .REP - ไฟล์รายงานน้ำตา
  • ทำเวอร์ชัน / พิจารณาการกำหนดเวอร์ชัน

    • ไฟล์ที่ชัดเจน: .PbbDoc, .PrjPcb, .SchDoc, .OutJob, .PrjPcbVariants
    • .DsnWrk - ฉันมักจะพบว่าฉันเปิดโครงการ PCB ที่ไม่เกี่ยวข้องหลายโครงการในขณะที่ทำงานตลอดทั้งวันซึ่งส่งผลให้เกิดการเปลี่ยนแปลงในไฟล์พื้นที่ทำงาน เนื่องจากไม่เกี่ยวข้องกับการควบคุมเวอร์ชันฉันจึงปล่อยมันออกไป
    • PcbLib, .SchLib, .PvLib - โครงการอาจมีไลบรารีเฉพาะโครงการ
    • .PrjPcbStructure - มีข้อมูลเกี่ยวกับโครงสร้างลำดับชั้น มันได้รับ (อีกครั้ง) สร้างขึ้นในการรวบรวม สามารถทำเป็นเวอร์ชันได้เนื่องจากเมื่อโครงสร้างเปลี่ยนแปลงการกระทำจะค้างอยู่แล้ว
    • . คำอธิบาย - มีข้อมูลกำกับประกอบในระดับบอร์ด
    • .Harness - ไฟล์เหล่านั้นมีคำนิยามของเทียมและอาจมีคำจำกัดความโดยพลการที่ไม่สามารถสร้างขึ้นได้

2

คุณต้องการควบคุมเวอร์ชัน. prjpcb (สมมติว่าคุณมีโครงการ PCB!), .prjpcbstructure, .pcbdoc และ. schdoc

ส่วนที่เหลือเช่นประวัติตัวอย่างผล gerber และอื่น ๆ เป็นไฟล์ชั่วคราวไม่สำคัญกับโครงการ

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

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