Quali file controllare la versione per un progetto Altium PCB?


12

Sto cercando di creare il .gitignorefile per un progetto Altium con versione con git e archiviato in remoto su GitHub.

Non voglio che i miei compagni di squadra lottino continuamente per dover aggiornare ogni volta che faccio una piccola modifica, come rieseguire i controlli delle regole di progettazione o ricompilare il progetto. Quali sono i file minimi che dovrei aggiungere al mio sistema di controllo versione?

# Ignore the subdirectory where output job outputs are placed
GeneratedOutput

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

# What else to ignore?

Risposte:


11

Ecco la lista da ignorare che uso per gestire i file Altium in SVN. Sono sicuro che possono essere convertiti in un formato .gitignore (se è addirittura necessario) senza troppi problemi:

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

Nota che non sono d'accordo con @KyranF, non vuoi archiviare i prjpcbstructurefile. Sono interamente rigenerati ogni volta che compili il progetto e comunque non c'è davvero nulla. Funzionalmente sono solo manufatti da costruire e quelli non dovrebbero essere commessi.

Inoltre, ho avuto il mio culo salvato alcune volte dalla roba History, se qualche centinaia di MB di memoria locale è un problema, hai bisogno di 1. Un disco rigido più grande e 2. Per fissare le tue priorità, se qualche centinaio MB è una considerazione seria a tutti.

Sono anche in forte disaccordo sul commettere gerber. Se stai cercando di collegare canonicamente un PCB effettivo a un set di file, avere i gerber può essere essenziale, in particolare quando le cose vanno male nella fase di esportazione e / o elaborazione di gerber. Certo, non dovresti eseguire il commit dei file gerber ogni giorno (non dovresti preoccuparti di crearli quotidianamente), ma dovresti SEMPRE impegnare (e idealmente taggare) ogni set di gerber che rilasci nella produzione.


Penso che *~$*possa essere l'indicatore del file temporaneo per SolidWorks , non Altium.


Immagino che i gerbers generati per una particolare "versione" di un PcbDoc siano importanti da tenere sotto controllo della versione, buon punto. E non ero sicuro del file prjpcbstructure, ma mi sembrava logico, dato che potrebbe includere informazioni su quali file / fonti esterni sono stati utilizzati durante quella particolare compilazione del progetto e potrebbe aiutare a diagnosticare i file mancanti in seguito
KyranF

Quando si invia una scheda per la produzione, è una buona idea comprimere l'intera cartella del progetto PCB (meno la cronologia e altri file di merda) e congelarla nello stato in cui è stata inviata - l'ho fatto alcune volte, e anche alcune volte dimenticato, e vorrei essere più coerente.
KyranF,

@KyranF - Molti file di altium sono ASCII, inclusi i .PrjPcbStructurefile. Puoi guardare dentro e vedere cosa codificano.
Connor Wolf,

abbastanza giusto, avrò un look!
KyranF,

I file .PrjPcb sono anche ASCII, il che è comodo se hai spostato le cose. È possibile modificare manualmente il contenuto del file.
Connor Wolf,

3

In aggiunta alle altre risposte:

  • Non versione

    • File evidenti: potenzialmente tutto l'output generato, come la distinta componenti, i file di report e così via.
    • .Dat: viene (ri) generato come parte della generazione della distinta base. Sembra contenere solo informazioni ridondanti.
    • .TLT - Informazioni sul layout della GUI.
    • .REP - File di rapporto a goccia.
  • Esegui versione / considera il controllo delle versioni

    • File evidenti: .PcbDoc, .PrjPcb, .SchDoc, .OutJob, .PrjPcbVariants
    • .DsnWrk - Trovo spesso che apro diversi progetti PCB non correlati mentre lavoro durante il giorno, il che comporta modifiche al file dell'area di lavoro. Dal momento che questo non è rilevante per il controllo della versione, tendo a lasciarlo fuori.
    • PcbLib, .SchLib, .PvLib - Un progetto può contenere alcune librerie specifiche del progetto.
    • .PrjPcbStructure: contiene informazioni sulla struttura gerarchica. Viene (ri) generato al momento della compilazione. Può essere aggiornato, poiché quando la struttura cambia, è comunque in sospeso un commit.
    • .Annotazione: contiene informazioni sull'annotazione dei componenti a livello di scheda.
    • .Harness - Questi file contengono la definizione di Harness e possono potenzialmente contenere definizioni arbitrarie che non possono essere generate.

2

Vuoi controllare la versione dei file .prjpcb (supponendo che tu abbia un progetto PCB!), .Prjpcbstructure, .pcbdoc e .schdoc.

Il resto, come la cronologia, le anteprime, gli output di Gerber ecc. Sono una sorta di file transitorio, non importante per il progetto.

modifica: sii consapevole anche delle enormi dimensioni dei file "storici", che possono diventare molte centinaia di megabyte, quindi dovresti regolare le dimensioni della cronologia nelle preferenze progetto / Altium per tenerlo sotto controllo, anche se l'intera cartella viene ignorata tramite il controllo dei file della sotto-versione, consumerà ancora spazio sull'HDD sul tuo PC.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.