Ecco il mio punto di vista per questo problema. Penso che la soluzione per te stia usando Build configuration template + parametrization in VCS root. Abbiamo circa 20 configurazioni di build (1 configurazione = 1 ramo), realizzate solo da due modelli e una radice vcs. Tutte le cose comuni per la configurazione sono mantenute nel modello. Solo pochi parametri specifici sono nella configurazione stessa e li si imposta alla creazione della configurazione dal modello. Uno di questi è il nome del ramo che è strettamente correlato al nome della configurazione nel mio caso.
I modelli sono
- continuo modello di integrazione - in cui si desidera solo controllare i progetti stanno costruendo
- template di uscita - Costruire più rilasciare generazione
punti VCSroot solo di radice di controllo del codice sorgente. Il parametro di diramazione di vcs root è impostato sul parametro di diramazione personalizzato che genera la configurazione ereditata dal modello di configurazione di build.
abbiamo filiali strutturati come questo
-Master
-Development
-Releases__3.4.1
|_3.4.2
|_3.4.3
Maestro e lo sviluppo sono utilizzando il modello di integrazione continua, e ogni nuovo ramo di release sta usando modello di configurazione di rilascio. Per me i proces di creazione di nuova configurazione per 3.4.4 ramo è come questo:
- Creare nuova configurazione
- Seleziona modello Scegli: COMUNICATO
- Inserisci il nome di configurazione Inserisci: 3.4.4
- Salva
- Run costruire
Punto è che il parametro nome Sede in uscita t emplate è così
%BranchPath%=Release/%ConfigurationName%
Per il modello Integrazione continua sarebbe
%BranchPath%=%ConfigurationName%
Inoltre nel ramo principale VCS è impostato% BranchPath% passato a esso dalla configurazione, quindi VCS possono lavorare con entrambi i modelli e tutte le 20 configurazioni E questo è tutto ..:) Spero che in qualche modo aiuti
Costruisci e collaudi versioni legacy ecc? - Personalmente uso TC @work, ma solo per cose mediocri come "costruire e testare questo ramo di una release e distribuirlo in testing - quindi elevare alla produzione" - mantengo solo 1 ramo di rilascio per progetto. Non credo che TC possa accogliere ciò che vuoi in un modo diverso da quello che già conosci e usi. Scusa – VisualBean
Vorrei creare e testarli una volta che il ramo è stato creato, quindi qualsiasi aggiornamento rapido in quel ramo avrebbe dovuto passare attraverso lo stesso processo. Potrebbero esserci 3-4 rami di rilascio in gioco in qualsiasi momento. –
Quale controllo di versione si usa? Come in, quali sono le diverse radici VCS? – psych