Il mio team sta attualmente utilizzando Visual Studio Team Services per il controllo del codice sorgente (TFS), la creazione (attivata al momento del check-in) e la distribuzione (utilizzando VSTS Release Management).
Abbiamo quattro ambienti (Dev, QA, Int, & Prod) e qualsiasi modifica di codice deve essere firmata (da parti diverse per ogni ambiente) prima di essere distribuita alla successiva.
Al momento, ogni volta che vengono apportate modifiche a un ambiente a valle, tutto dall'ambiente a monte va immediatamente; Ho convinto con successo sia la squadra che il team gestione che questo deve cambiare.
Ovviamente significa che è su di me capire come modificarlo. Ho lanciato i branch di funzionalità, ma dal momento che siamo su TFS, il team sta facendo pressione su questo come troppo pesante; Ho trasmesso la migrazione a git, che la direzione ha accettato in linea di principio ma ha rinviato a un punto indefinito in futuro.
Senza cambiare il controllo del codice sorgente da TFS, cambiando la nostra build & rilasciare da VSTS, o implementare rami di funzionalità, come possiamo promuovere selettivamente le modifiche al codice attraverso la pipeline di ambienti?
Aggiornamento: In base ai commenti, il mio obiettivo è apparentemente vago, quindi cercherò di chiarire. Mi piacerebbe, all'interno della nostra attuale infrastruttura, essere in grado di distribuire un sottoinsieme arbitrario di ciò che è in un determinato ambiente al suo successore.
Ad esempio, supponiamo che ci siano 5 elementi nell'ambiente QA che non sono ancora stati distribuiti su Int e che i tester firmano il 2 & 5 ° (in base all'ordine di check-in) ma il 1 °, 3 ° & Il quarto ha difetti Come possiamo distribuire solo le due modifiche firmate su Int senza implementare anche le tre versioni difettose?