Domanda

Attualmente sto cercando nuove opzioni di controllo del codice sorgente per un team di 10 sviluppatori. Facciamo sviluppo .net in Visual Studio 2008. Attualmente utilizziamo VSS per il controllo del codice sorgente.

Stiamo cercando una soluzione centralizzata di controllo del codice sorgente (non distribuita), con un bel plug-in di Visual Studio. Il mio manager ha raccomandato Plastic SCM e ho sempre sentito cose positive su Subversion. Sto cercando di decidere se dovremmo adottare Subversion o Plastic SCM.

Non ci sono molte informazioni là fuori su Plastic SCM (tranne quello che hanno scritto) e mi chiedevo se sarebbe stata una buona soluzione. Fanno sembrare che la ramificazione sia molto più semplice.

Subversion ha invece una comunità solida, matura ed è stata accuratamente testata sul campo.

Quali sono i pro e i contro di questi strumenti?

Ci sono altri strumenti che potresti suggerire?

Grazie

È stato utile?

Soluzione

Non ho mai usato Plastic SCM prima, ma Subversion ha funzionato molto bene per me in passato. Se non sei vincolato a una soluzione gratuita come SVN, potresti prendere in considerazione Team Foundation Server. Oltre al controllo della versione, TFS offre ulteriori utili funzioni come il monitoraggio degli oggetti di lavoro, i report integrati ... Come puoi immaginare, l'integrazione di Visual Studio è semplicemente fantastica :)

Altri suggerimenti

I & # 8217; d mi piace aggiungere questa risposta affinché tutti possano ancora fare la propria scelta.

I & # 8217; m in via di sviluppo in C # con VS2008. Sto & # 8217; sto lavorando in un team di due sviluppatori. Non avevamo il controllo del codice sorgente (horror), quindi abbiamo usato Subversion (okish) e poi siamo passati a Plastic SCM (buono).

La mia matrice di confronto:
(notare il mio punto di vista dell'utente di Windows, YMMV)

Pro Plastic:

  • Applicazione Windows - UI intuitiva e intuitiva
  • Buoni video di apprendimento (puoi imparare tutto ciò di cui hai bisogno in circa due ore & # 8217; s tempo)
  • Le attività standard sono tutte molto semplici da eseguire: passare a un altro ramo, ottenere una versione precedente di alcuni file, diff, fusioni.

Contra Plastic:

  • Costi denaro (gratuito per open source; Modifica (2/2011): esistevano licenze commerciali gratuite per 2 utenti Esiste una licenza commerciale gratuita per 15 utenti Tuttavia, è necessario rinnovarlo ogni anno.)
  • Nessun vero programma server / admin: I & # 8217; non ho idea di dove siano archiviati esattamente i dati sul mio disco; & # 8217; s tutto nascosto da me. Ora, come posso eseguire il backup del mio repository? L'unica & # 8220; soluzione & # 8221; So che sta usando la funzionalità di replica del client e replicare il repository sul tuo server localhost. (Non ho ancora & # 8217; non l'ho ancora fatto.) [MODIFICA: Dai un'occhiata ai commenti per una vera soluzione.]

Pro Subversion:

  • libero
  • Open Source
  • Base di utenti enorme

Contra Subversion:

  • Subversion non può & # 8217; t davvero gestire i nomi dei file. Puoi aggirare il problema, ma & # 8217; non è (ancora) una funzionalità nativa.
  • Cose come spostare una directory potrebbero corrompere la tua copia di lavoro.
  • Tortoise SVN è poco più di un fa & # 231; ade per la riga di comando svn.exe. Per molte operazioni è ancora necessario conoscere i comandi della riga di comando e i relativi parametri.
  • Tortoise SVN ha notevolmente rallentato i clic con il tasto destro del mouse su Esplora risorse di Windows.
  • La fusione richiede più tempo in caso di conflitti. Ottieni diverse copie dello stesso file e poi devi eliminare tutte le versioni di cui non hai bisogno! fino a quando non li hai rimossi tutti. In Plastic SCM, invece, l'operazione di unione apre una finestra simile a WinMerge e puoi semplicemente fare clic su blocchi di codice necessari per risolvere il conflitto.

Spero che sia d'aiuto. Se hai bisogno di altre informazioni specifiche, faccelo sapere.

Felix

L'uso di VisualSVNServer è un modo semplice per far funzionare Subversion in ambiente Windows e hanno uno strumento che offre l'integrazione di Visual Studio per circa $ 50 / dev. Quando ho lavorato per un'azienda nel mezzo di un passaggio, la decisione è stata tra SVN e Perforce. Abbiamo finito con SVN perché sono stato in grado di ottenerlo, usarlo, testarlo, giocarci molto facilmente. Potremmo ottenere presentazioni WebEx di Perforce, ma è stato difficile imparare senza acquistare il loro libro. Ho anche sostenuto che era uno strumento migliore per gli sviluppatori, perché c'erano molti progetti open source ed era un'abilità più trasferibile. È improbabile che SCM di plastica venga utilizzato se dovessi passare a un'altra posizione.

Dai un'occhiata alla performance qui. Confronta entrambi i sistemi con un carico davvero pesante (1, 10, 20, 50 e infine 100 macchine simultanee con un singolo server, che è sicuramente più di 100 utenti reali).

In anticipo chiedo scuse per il mio suggerimento, ma è possibile utilizzare un sistema di controllo versione distribuito in modo centralizzato. È solo questione di politica all'interno del tuo team di sviluppo.

Ad esempio, Mercurial consente di eseguire facilmente pull e push tramite il servizio Web tramite TortoiseHG.

O forse puoi provare una soluzione di mix, un server centralizzato (di sovversione) e una diramazione locale per ogni sviluppatore usando git, che devo dire, è molto semplice.

Per Subversion < - > VStudio, ho usato Ankh e lo trovo molto facile da usare. Per Git & Lt; - & Gt; VStudio, ho usato GitExtensions e l'integrazione non è così buona come si può trovare ad esempio con un'estensione Tortoise Shell o con Ankh, ma puoi provarla tu stesso.

Ho usato GIT, SVN e Plastic (versione precedente a SCM 4), poi su SVN, e ora di nuovo su Plastic SCM 4. La plastica non è solo più veloce per il check-in / checkout / aggiornamento, ecc. rispetto agli altri che ho usato, ma ha un'interfaccia utente gradevole, navigazione e funzioni intuitive (per me). Mi sono sempre imbattuto in copie di lavoro corrotte con SVN quando ho cambiato filiale, ecc. La plastica funziona solo per me.

Un'altra alternativa a VSS è SourceGear Vault ('vss done right'). Un grande vantaggio è che funziona (a differenza di VSS).

PlasticSCM sembra essere una soluzione distribuita, mentre svn (e VSS, TFS, ...) sono centralizzati. Se desideri alternative per soluzioni distribuite commerciali, potresti dare un'occhiata a git , mercurial , Bazar .

Ho usato SVN per il tempo più lungo. Mi ci sono abituato. Sia in ufficio che sulla mia rete personale a casa. Funzionava bene e facilmente.

Di recente ho iniziato un nuovo lavoro e in questo ufficio utilizziamo la plastica. Questa è stata la mia prima esposizione a questo prodotto. Sono così sbalordito con Plastic che sul mio server, ho abbandonato SVN e sono passato a Plastic. È proprio così bello. Non sarò facilmente convinto di tornare a SVN. La plastica è perfetta. È gratuito per un massimo di 15 sviluppatori. Può essere integrato con SQL Server, in modo da sapere sempre esattamente dove si trova il repository. Può essere collegato per utilizzare l'autenticazione AD. La cosa che mi piace di più di Plastic è il Branch Explorer. Ha una GUI che mostra tutti i rami del tuo progetto attuale. In questo Branch Explorer puoi creare rami secondari dal tuo ramo principale o unire nuovamente i rami secondari nel ramo principale. Questo è stato ben pensato.

Plastic IMHO è un sogno diventato realtà. Pablo conosce le sue cose!

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top