File mana ke kontrol versi untuk proyek Altium PCB?

12

Saya mencoba membuat .gitignorefile untuk proyek Altium yang diversi dengan git dan disimpan dari jarak jauh di GitHub.

Saya tidak ingin rekan tim saya terus berjuang dengan harus memperbarui setiap kali saya melakukan perubahan kecil, seperti menjalankan kembali pemeriksaan aturan desain atau mengkompilasi ulang proyek. Apa file minimum yang harus saya tambahkan ke sistem kontrol versi saya?

# Ignore the subdirectory where output job outputs are placed
GeneratedOutput

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

# What else to ignore?
tarabyte
sumber

Jawaban:

11

Berikut adalah daftar abaikan yang saya gunakan untuk mengelola file Altium di SVN. Saya yakin mereka dapat dikonversi ke format .gitignore (jika diperlukan) tanpa terlalu banyak kesulitan:

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

Perhatikan bahwa saya tidak setuju dengan @KyranF, Anda tidak ingin mengarsipkan prjpcbstructurefile. Mereka sepenuhnya dibuat ulang setiap kali Anda menyusun proyek, dan tidak ada apa pun di sana. Mereka secara fungsional hanya membangun-artefak, dan itu tidak boleh dilakukan.

Juga, saya telah menyelamatkan pantat saya beberapa kali oleh History, jika beberapa ratus MB penyimpanan lokal adalah masalah, Anda perlu 1. Hard drive yang lebih besar, dan 2. Untuk memperbaiki prioritas Anda, jika beberapa ratus MB adalah pertimbangan serius sama sekali.

Saya juga sangat tidak setuju tentang melakukan gerber. Jika Anda mencoba untuk menghubungkan kanonik PCB yang sebenarnya ke satu set file, memiliki gerber bisa menjadi penting, terutama ketika ada masalah dalam ekspor gerber dan / atau tahap pemrosesan. Memang, Anda tidak boleh membuat file gerber setiap hari (Anda juga tidak perlu repot membuatnya setiap hari), tetapi Anda harus SELALU melakukan (dan secara ideal menandai) setiap set gerber yang Anda lepaskan untuk diproduksi.


Saya pikir *~$*mungkin indikator file sementara untuk SolidWorks , bukan Altium.

Connor Wolf
sumber
Saya kira gerbers yang dihasilkan untuk "versi" tertentu dari PcbDoc penting untuk tetap bersama di bawah kontrol versi, poin bagus. Dan saya tidak yakin tentang file prjpcbstructure namun tampaknya logis bagi saya, mengingat itu mungkin termasuk informasi tentang apa file / sumber eksternal yang digunakan selama kompilasi khusus proyek dan dapat membantu mendiagnosis file yang hilang kemudian
KyranF
Ketika Anda mengirim papan untuk pembuatan, itu ide yang baik untuk ritsleting seluruh folder proyek PCB (minus sejarah dan omong kosong file lainnya) dan membekukannya dalam keadaan di mana ia dikirim - saya telah melakukan ini beberapa kali, dan juga lupa beberapa kali, dan berharap aku lebih konsisten.
KyranF
@ KirranF - Banyak file altium adalah ASCII, termasuk .PrjPcbStructurefile. Anda dapat melihat dan melihat apa yang disandikan.
Connor Wolf
cukup adil, aku akan melihat-lihat!
KyranF
File .PrjPcb juga ASCII, yang nyaman jika Anda telah memindahkan barang. Anda dapat mengedit konten file secara manual.
Connor Wolf
3

Sebagai tambahan untuk jawaban lain:

  • Jangan versi

    • File yang jelas: Berpotensi semua output yang dihasilkan, seperti BOM, file laporan, dan sebagainya.
    • .Dat - Apakah (kembali) dihasilkan sebagai bagian dari generasi BOM. Tampaknya hanya berisi informasi yang berlebihan.
    • .TLT - Informasi tata letak GUI.
    • .REP - File Laporan Teardrop.
  • Lakukan versi / pertimbangkan versi

    • File yang jelas: .PcbDoc, .PrjPcb, .SchDoc, .OutJob, .PrjPcbVarian
    • .DsnWrk - Saya sering menemukan, bahwa saya membuka beberapa proyek PCB yang tidak terkait saat bekerja sepanjang hari, yang menghasilkan perubahan pada file ruang kerja. Karena itu tidak relevan untuk kontrol versi, saya cenderung mengabaikannya.
    • PcbLib, .SchLib, .PvLib - Suatu proyek dapat berisi beberapa perpustakaan khusus proyek.
    • .PrjPcbStructure - Berisi informasi tentang struktur hierarkis. Ia mendapat (kembali) yang dihasilkan pada kompilasi. Dapat diversi, karena ketika struktur berubah, komit tertunda.
    • .Annotation - Berisi informasi penjelasan komponen level papan.
    • .Harness - File-file tersebut mengandung definisi Harness dan berpotensi mengandung definisi sewenang-wenang yang tidak dapat dihasilkan.
Rev1.0
sumber
2

Anda ingin versi mengontrol file .prjpcb (dengan asumsi Anda memiliki proyek PCB!), .Prjpcbstruktur, .pcbdoc, dan .schdoc.

Sisanya, seperti riwayat, pratinjau, keluaran gerber dll adalah semacam file sementara, tidak penting untuk proyek.

sunting: perhatikan juga ukuran besar file "histori", mereka dapat menjadi ratusan megabita, jadi Anda harus menyesuaikan ukuran histori dalam proyek / preferensi Altium agar tetap terkendali, bahkan jika seluruh folder itu diabaikan dengan kontrol file sub-versi, masih akan memakan ruang HDD di PC Anda.

KyranF
sumber