Strategia con l'utilizzo di SVN per passare da test a server di produzione. (con mantenimento dei file di configurazione) [chiuso]

0

Mi piacerebbe sapere la tua opinione sul mio setup in questo momento, su come faccio le cose con SVN e se potresti trovare qualche soluzione migliore per me. Lo apprezzerei molto se qualcuno riuscisse a trovare soluzioni migliori per i miei problemi. Mi piacerebbe farlo nel modo migliore possibile e nel modo più efficiente.

La mia situazione è la seguente: Sto mantenendo un sito Web PHP che è collegato al database mysql. Ho un sottodominio su cui sto testando tutto. Ci sono anche due database: prima per scopi di test, secondo per il server di produzione. Ho un progetto in Netbeans e sono connesso a ftp con esso, quindi ogni modifica che faccio viene trasferita direttamente al sito web. Inoltre sono connesso al server SVN e la parte di test del sito Web è nella directory principale. Ogni volta che voglio caricare le modifiche sul server sto cominciando il mio baule e poi lo copio sui tag. Dopo di ciò ho preparato un altro progetto in Netbeans, già connesso allo stesso SVN, ma all'ultima copia del tag. Dopo aver copiato il trunk per taggare la directory, passo al secondo progetto e passa alla versione più recente nei tag. Ora ho in qualche altra directory ogni file di configurazione preparato nella giusta struttura di directory - lo copio nel mio progetto di produzione. Dopo di che faccio clic su "Esegui" in Netbeans e questo apre una finestra che mi consente di accettare i trasferimenti allo sftp, ma questa volta alla parte di produzione del sito Web.

La mia domanda è: è il modo migliore? Non ci sono più strumenti o opzioni intuitive in SVN, quindi non devo copiare i file di configurazione ogni volta?

    
posta Kelu Thatsall 06.08.2013 - 16:35
fonte

2 risposte

3

Un pacchetto software ha due tipi di configurazione:

  1. configurazione specifica per l'ambiente
  2. configurazione specifica del comportamento

Il primo differisce tra gli ambienti di sviluppo, test, stage e produzione. dovrebbe avere al massimo 4 righe (URL del server web, stringa di connessione del database, certificati SSL, stringhe / URL di connessione ad altri componenti correlati, directory di installazione, realm di autenticazione e simili; di quelli pari) e dal momento che rende assolutamente privo di senso al di fuori di questa installazione sul server particolare (cioè potrebbe cambiare quando viene reinstallato il server), in genere non dovrebbe essere versionato (tranne come parte della versioning installazione del server se l'amministratore è in questo).

La versione successiva dovrebbe essere corretta, ma non deve differire tra gli ambienti . È solo parte della sorgente / build.

Ovviamente la configurazione deve essere suddivisa in modo appropriato su due file in modo da poter eseguire la versione di cui hai bisogno e non l'altra.

    
risposta data 06.08.2013 - 17:05
fonte
3

Una soluzione semplice sarebbe mantenere tutti i file di configurazione nel repository e disporre di uno script di compilazione che copi la versione corretta per l'ambiente in caso di necessità.

    
risposta data 06.08.2013 - 17:00
fonte

Leggi altre domande sui tag