La necessità di software di controllo del codice sorgente - Team Foundation Server? o qualcosa di diverso? [chiuso]

-1

Di recente,

Qui in azienda, più di un programmatore è stato nominato responsabile per un progetto di sviluppo software LightSwitch (C #) e immediatamente c'era bisogno di una sorta di controllo / sincronizzazione del codice sorgente.

Non abbiamo mai usato Team Foundation Server ma lo useremmo volentieri se ne valesse la pena.

  • È lo strumento giusto da usare per codice di sincronizzazione tra programmatori?
  • Ha le funzionalità necessarie?
  • Hai altri strumenti in mente? (Ho usato TortoiseSVN ma era troppo semplice e "texty" se tu so cosa intendo, abbiamo bisogno di a strumento professionale)
  • Quali altre funzionalità ha Team La Fondazione ha che possiamo usare?

(se non hai compreso nulla di quanto sopra ti preghiamo di chiedere ulteriori chiarimenti)

    
posta l0Ft 03.05.2011 - 09:53
fonte

4 risposte

6

Il server di base del team è uno strumento completo per ALM - gestione del ciclo di vita delle applicazioni. Il controllo del codice sorgente è solo una parte dell'intero prodotto. Tra gli altri offre:

  • Controllo del codice sorgente con regole configurabili che rafforzano la qualità del codice. Penso che usi il server SQL come repository (non ne sono sicuro), quindi ci possono essere alcune tecniche ben note per i backup, ecc. Offre funzionalità di base come etichettatura, ramificazione, unione e scaffalature
  • Crea un agente per eseguire build / test / implementazioni automatici
  • Modelli di progetto per gestire lo sviluppo del progetto / requisiti / attività / bug / relazioni di progetto / punti cardine. I modelli possono essere personalizzati in modo tale che siano disponibili modelli per la gestione dei progetti Agile.
  • Portale del progetto con librerie di documenti / wiki / ecc. in esecuzione sui servizi Sharepoint
  • A seconda delle licenze VS, può fornire alcuni scenari di test molto avanzati
  • Notifiche configurabili via email
  • Client Web per l'aggiunta di requisiti e bug senza installare Visual Studio
  • ecc.

TFS è un prodotto commerciale. Se si hanno abbonamenti MSDN, andrà bene altrimenti è necessario acquistare il prodotto server e la licenza per utente (CAL). Non sono sicuro, ma questo può richiedere ulteriori CAL per Windows Server, SQL Server e Sharepoint se non si utilizza Sharepoint Services.

La verità è che ognuna di queste funzionalità ha un equivalente migliore sul mercato, ma TFS fornisce semplicemente questo come un prodotto che viene installato senza problemi e completamente integrato in Visual Studio out-of-the-box (installando Team explorer).

Ad esempio ho trovato Cruise Control o Team City come strumenti molto più potenti per le build automatiche.

SVN è un buon controllo del codice sorgente (meglio di quello offerto da TFS) ma ho trovato più complicato gestirlo e usarlo (TFS è davvero per tutti). TortoiseSVN è solo l'estensione di Windows Explorer. Puoi installare AnkSvn e avrai integrazione con Visual Studio.

    
risposta data 03.05.2011 - 10:08
fonte
10

"we need a professional tool"

oh caro. Permettetemi di parlarvi del tempo in cui abbiamo demolito il nostro sistema SVN perfettamente funzionante e lo abbiamo sostituito con uno strumento "enterprise" che è stato altamente raccomandato da un consulente e dalla direzione. .. in realtà, no, non posso portarmi a documentare l'orrore che abbiamo sopportato per l'anno in cui era in atto, prima di eliminarlo e tornare al sistema SVN perfettamente funzionante che avevamo prima.

Martin Fowler ha fatto un rapido sondaggio tra i tecnofili leggendo il suo blog. I risultati sono molto interessanti.

I buoni sono quelli "non professionali". Questi sono quelli che i tecnici amano e sono molto più produttivi con. I crpa sono quelli che hanno un sacco di 'amministrazione' e 'controllo di blocco' ad essi associati, cose come flussi di lavoro ispirati alla gestione. (oh, ok, avevamo i flussi di lavoro e le regole in questo "strumento", al punto in cui dovevi portare una squadra a creare / autorizzare una nuova parte di progettazione che potevi usare per controllare il tuo codice contro - non potevi semplicemente controlla il tuo codice o si perderebbe nella massa di compiti obbligatori che erano anche associati a parti di design, l'idea era che avremmo potuto controllare correttamente i rilasci ... non accadde mai, il disastro totale, e fu quando tutti i TL erano nel ufficio e disponibile per creare i dannati compiti!)

Puoi fare molto meglio delle funzionalità di TFS guardandoti intorno e molti degli strumenti OSS sono molto buoni. Scegli quelli che ti piacciono, raccomando SVN con Jenkins build server e redmine per il tracciamento delle attività. Potresti apprezzare Jira o CruiseControl con Mercurial.

    
risposta data 28.03.2012 - 23:55
fonte
4

Sono d'accordo con gbjbaanb e Ladislav Mrnka. Entrambi hanno ragione.

Team Foundation è un potente strumento per la gestione del ciclo di vita delle applicazioni. Per i miei progetti si adatta a tutte le necessità di cui ho bisogno. Ma quali sono i tuoi bisogni?

Non ci sarebbe mai una soluzione perfetta per ogni progetto. Alcuni come SVN, alcuni come Git qualcos'altro. Ma per questo è necessario prendersi cura delle esigenze del progetto. Usi solo il controllo del codice sorgente? Avete bisogno degli strumenti di gestione? Quanto vuoi pagare per questo.

Mi piace molto TFS. Ha buoni modelli di processo, come scrum 2.0 (in fase di aggiornamento della versione di tfs), validazione del check-in, integrazione di fxcop, report, buon sistema di sicurezza. Anche il servizio di compilazione è buono, ma ha bisogno di molto lavoro per farlo nel modo in cui dovrebbe funzionare.

Quindi forse chiarisci di cosa hai bisogno e cerca alcuni prodotti e confrontali. Prendi il prodotto più adatto alle tue esigenze.

    
risposta data 29.03.2012 - 13:55
fonte
1

Per aggiungere ai punti che tutti hanno fatto, non dimenticare che esistono ottimi sistemi di controllo delle versioni distribuiti (DCVS) che funzionano molto bene. Personalmente preferisco Mercurial come sviluppatore .NET, ma c'è anche un caso altrettanto valido per Git.

C'è una risposta veramente buona sui vantaggi di un DCVS rispetto a un sistema CVS tradizionale come TFS o SVN.

    
risposta data 16.06.2015 - 23:13
fonte