Evita la variabile errata sul commit del ramo

1

Il nostro software web frontend contiene, all'interno di un file chiamato url.js una variabile usata come root dell'URL per i webservices REST.

var url = "https://devappserver:8080";

Durante lo sviluppo su PC per sviluppatori, a scopo di test, la variabile viene spesso cambiata in

var url = "https://localhost:8080";

Il problema è che spesso gli sviluppatori commettono il file con la variabile che punta a localhost sul ramo di sviluppo.

Usiamo Subversion come VCS.

Quale dovrebbe essere la migliore pratica per evitare l'errore?

Esiste una soluzione tecnica per raggiungere l'obiettivo?

    
posta sgargel 08.02.2017 - 12:56
fonte

2 risposte

0

Ecco un'idea da una precedente domanda StackOverflow . Lascia che url.js sia il tuo file di configurazione di default che si trova sotto il controllo del codice sorgente. Nel codice che carica le variabili da quel file, prova la presenza di un altro file url_local.js , che contiene un compito di sostituzione come

  url = "https://localhost:8080";

Includi questo file se è presente utilizzando uno dei meccanismi discussi qui .

Non mettere quel file sotto il controllo del codice sorgente. Invece, scrivi un commento in url.js come

 // do not change the following line directly, instead do this in url_local.js
 var url = "https://devappserver:8080"

Se necessario, puoi anche fornire un file url_local_example.js nel controllo del codice sorgente che tutti possono utilizzare come modello per il suo file url_local.js .

    
risposta data 08.02.2017 - 15:59
fonte
0

Perché non utilizzare le variabili di ambiente? Qualcosa sulle macchine di sviluppo con il valore di DEV e qualcosa sui tuoi server con il valore QA o TST o PRD . Quindi, nel tuo codice, qualcosa sulla falsariga di

const urls = {
  dev: "https://localhost:8080",
  prd: "https://devappserver:8080"
};

let url;
if(envVariable === 'DEV') url = urls.dev;
else url = urls.prd;

In alternativa, puoi memorizzare questo tipo di cose in un file di configurazione e caricare il file di configurazione corretto in base alla variabile di ambiente.

    
risposta data 08.02.2017 - 14:10
fonte

Leggi altre domande sui tag