Team Foundation Server - Distribuzioni

0

Al momento abbiamo 5 sviluppatori che lavorano su un'applicazione Silverlight abbastanza grande. Abbiamo 3 server:

  • Prova
  • Server di accettazione degli utenti
  • Produzione

Ogni persona lavora su qualcosa di completamente diverso e raramente si imbatte nel codice dell'altro. Quando lo fanno, lo uniscono semplicemente mentre controllano le loro modifiche.

Il più grande problema che abbiamo attualmente è lo scenario seguente:

  1. Una persona lavora su alcuni moduli e è finito ma non lo vogliamo essere ancora rilasciato
  2. La seconda persona lavora su alcune correzioni di bug ecc. a chi è necessario essere rilasciato.

Entrambe le persone hanno controllato nel loro codice. Ora come selezioniamo / selezioniamo le modifiche che vorremmo mantenere in una build specifica.

Esiste un modo per creare build personalizzate basate su check-in specifici? Possiamo annullare alcune modifiche?

Ho una precedente esperienza in git / hg e ho appena iniziato a usare TFS per questo progetto. Quello che facevo in Git era creare un nuovo branch per feature e ogni persona lavorava nel proprio ramo. Se una persona stava lavorando su un bug generale, lo avrebbe poi controllato alla filiale principale e altre persone lo avrebbero semplicemente estratto per assicurarsi che fossero aggiornati. Una volta terminata la funzione, uniremo il ramo al ramo principale. TFS sembra essere molto fragile e ogni volta che ho provato a fare qualcosa con esso ho finito per perdere alcune modifiche apportate o finire con molte ore cercando di risolvere alcuni problemi casuali che ho creato svolgendo compiti semplici come controllarlo o ottenere l'ultimo.

Sono disponibili esercitazioni (più disponibili)

    
posta Luke 26.05.2011 - 02:43
fonte

2 risposte

3

Io preferisco una situazione di ramo per caratteristica e la fusione in una stalla principale per questa situazione - potrebbe essere utile leggere la guida alla ramificazione per Team Foundation Server, che si riferisce a questo come "lavoro con funzionalità segregate".

Ovviamente un DVCS avrà caratteristiche diverse quando si lavora con le filiali rispetto a un sistema di controllo delle versioni centralizzato come Team Foundation Server, ma la configurazione che si sta descrivendo è molto comune (rispecchia il modello di ramificazione utilizzato dal team che sviluppa Team Foundation Server, infatti) e non dovrebbe essere davvero così fragile.

Mi chiedo se sia una differenza di aspettative tra il modo in cui TFS si fonde e il modo in cui git si fonde. Se tu potessi descrivere quali tipi di problemi hai in maggior dettaglio, potrei essere in grado di fornire risorse migliori.

    
risposta data 26.05.2011 - 16:06
fonte
2

Potresti utilizzare scaffali in TFS per fare qualcosa del genere .

chiunque voglia quelle modifiche potrebbe quindi controllare il set di shelving, ecc.

    
risposta data 26.05.2011 - 02:59
fonte