controllo versione per piccoli team [chiuso]


13

Stiamo avviando un nuovo team di dimensioni molto ridotte (diciamo 2-5) la mia domanda è: quale tipo di controllo versione funziona meglio per questo tipo di team, sia centralizzato che distribuito.


Prova SVN tortoisesvn.tigris.org Questo è il migliore per te.
Vijesh V. Nair,

Cosa vuoi scrivere e quale piattaforma?

Risposte:


30

Distribuito fino in fondo, non c'è davvero più alcun punto per IMHO centralizzato, specialmente se si parla di sviluppo di un team.

Un altro voto per Mercurial, nessuna seccatura da installare sotto windows e bitbucket.org ha repository gratuiti (che possono essere privati) con spazio illimitato.

Se hai intenzione di lavorare su un progetto open source, git e Github sembrano essere più adeguati / popolari. Tuttavia, se non ti sei avventurato nei DVCS, ti consiglio di iniziare con Mercurial e questa fantastica guida .


1
+1 per quella fantastica guida di Joel Spolsky. Roba fantastica. Inoltre, anche se ora sei molto piccolo, come dice @dukeofgaming, non ha più senso iniziare centralizzato. Anche se stai pianificando solo leggermente in anticipo.
Mark Freedman,

Per i progetti attenti alla libertà del software, gitorious è probabilmente meglio di github.
Lars Wirzenius,

@Lars: Cosa intendi con "libertà del software"?
Richard Ev,

5
Anche come sviluppatore solitario Mercurial ha perfettamente senso.
Oliver Weiler,

Metodo amen @Helper, è così che ho iniziato a usarlo
dukeofgaming


4

Probabilmente la risposta migliore è "qualunque cosa tu sia a tuo agio". Anche quando lavoro su cose personali, uso Git. Sembra fare un buon lavoro di ridimensionamento sia su che giù e la mia esperienza limitata con Mercurial è più o meno la stessa.


Dalla mia esperienza limitata con Git - se sei su una piattaforma Windows, gli strumenti Git non sono ancora pronti per la prima serata. Stick con Mercurial (o Forno). Su altre piattaforme, Git probabilmente sta bene.
Mark Freedman,

1
Msysgit funziona bene se si ha familiarità con un prompt di Shell.

@Mark hai sicuramente ragione se la gente non vuole la riga di comando. Tuttavia, la riga di comando di Git (con una shell come sottolinea Thorbjorn) va bene. Programma solo su Windows e sto usando Git per progetti VS. Non c'è certamente nulla che avvicini TortoiseSVN e AnkhSVN per Git.
MIA,

1

Penso che dovresti scegliere qualunque cosa tu sia a tuo agio. In un piccolo team, non avrai diversi alberi di codice (come il kernel Linux), quindi un repository centrale è OK. Ma puoi avere questa configurazione anche con VCS distribuito. Quindi andrei con popolarità ed esperienza personale. Popolari sono SVN, git e Mercurial. Dovresti decidere quale di essi è meglio utilizzato con il tuo team (esperienza, supporto degli strumenti nel tuo IDE scelto, ecc.).


1

Dipende davvero dal fatto che i tuoi sviluppatori sviluppino o meno un sacco di codice offline o meno, ma solo per scegliere tra un repository distribuito o centralizzato, poiché questa è la prima cosa che dovresti decidere. Quindi, se decidi che un approccio centralizzato funziona meglio di SVN è tutto ciò di cui hai bisogno. D'altra parte, se si sceglie un approccio distribuito rispetto a quello di git, anche su Windows è abbastanza buono poiché ora si ha git di tartaruga (la stessa interfaccia che esiste anche per svn). Inoltre, non contare così tanto sul supporto IDE perché potresti avere una brutta sorpresa se mai lo usi, e potresti scoprire che i file che non dovrebbero essere impegnati vengono impegnati a tuo nome dall'IDE.


1

Chiedi alla tua squadra se qualcuno vuole occuparsene. È molto meglio avere un sistema stabile e una persona responsabile, piuttosto che un buon sistema quando nessuno se ne preoccupa e nessuno è in grado di ripristinarlo dal backup.

Se esiste una persona del genere, saprà già cosa usare, quindi accetta la sua decisione. In caso contrario, ottieni una soluzione ospitata. Sarebbe molto stupido provare GIT (uno dei migliori) se tutti gli sviluppatori non toccassero mai Shell / Linux.

Dipende anche dal numero di persone "non tecniche", che devono leggere / contribuire. Assicurati solo che possano usarlo e ci sono strumenti disponibili.


1

SVN è ampiamente supportato negli strumenti. Gli utensili sono la chiave; persone diverse avranno abilità diverse. Alcuni preferiranno la riga di comando, altri preferiranno strumenti basati su IDE, altri preferiranno strumenti grafici. Al momento SVN sembra essere lo strumento più ampiamente supportato.

Altro che Mercurial o Git.


0

Penso che nelle piccole aziende ci siano argomenti per centralizzare alcune cose. (Pensa ad esempio al backup fuori sede. Quando hai solo 2 persone che lavorano su un progetto e stanno alloggiando nello stesso edificio e c'è un incendio, la decentralizzazione di tutti e due i computer potrebbe non essere sufficiente.)

Tuttavia: avere una soluzione parzialmente centralizzata non ti limita a un sistema centralizzato. Puoi semplicemente passare a un server esterno con qualcosa come git o mercurial.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.