Sto usando git (tramite GitHub) per il controllo della versione sui miei progetti. Sono ancora nuovo a questo, ma mi piacerebbe sapere le migliori pratiche su come mantenere i miei file css
e js
sincronizzati tra gli ambienti.controllo versione: come controllare le versioni css e js compresse/minificate tra gli ambienti
Esempio: Diciamo che scrivo uno script js
su dev. Sono contento del mio lavoro e spingo ai test. Bene sul test vorrei una versione minified/compressa. Come potrei realizzarlo senza un sacco di compiti generali? Cosa fate ragazzi? Suppongo che faccia parte di una specie di script di distribuzione che comprime il codice e lo spinge in qualsiasi ambiente specifico.
Questo fa sorgere un'altra domanda: per quanto riguarda i miei file header
(e/o footer
) nel mio progetto? Se il mio dev
ha:
<link rel="stylesheet" href="<?php echo base_url(); ?>css/main.css">
e la mia testing
ha:
<link rel="stylesheet" href="<?php echo base_url(); ?>css/main.min.css">
Questo è tutto bene, ma cosa succede se ho bisogno di apportare modifiche al mio header? Come separerei tutte queste cose l'una dall'altra? Se apporto modifiche alla mia intestazione e spingo al testing o alla produzione, perderei lo .min
da quella linea di inclusione.
Attualmente quello che faccio per distribuire gli aggiornamenti è solo un semplice git pull origin [branch]
dalla riga di comando all'interno dell'ambiente che voglio aggiornare.
Ancora una volta, sto cercando le migliori pratiche, qualunque sia l'apprendimento richiesto. Grazie!
Avrei sicuramente ** non ** mantenuto la fonte minificata nel controllo della versione. Scrivi uno script di build di qualche tipo (molte opzioni), controlla quello script nel controllo di versione e usalo per minimizzare (etc) durante la distribuzione. – Pointy
Solo una fyi, avere percorsi assoluti renderebbe molto più semplice riscriverli in una fase di compilazione o di distribuzione :) Inoltre, aggiungi un hash ai nomi dei file compressi in modo da poterli memorizzare nella cache per molto tempo. –
@Pointy +1 per non mantenere i file minificati nel controllo del codice sorgente. È come mantenere i binari compilati nel controllo del codice sorgente. – Floremin