Come ti senti nell'uso dei sistemi di controllo versione online? [chiuso]

5

Gestisco da anni il mio server di casa per il mio codice personale e ho provato un sistema o un altro (SVN, VSS, ecc.). Ma recentemente, mi è piaciuto avere alcuni dati più preziosi (senza codice sorgente) al di fuori del sito, senza dovermi preoccupare costantemente dei backup in caso di guasto dell'hardware, utilizzando servizi come Dropbox, Skydrive, app Google, ecc.

Questo mi ha fatto desiderare di fare lo stesso con il mio codice sorgente per vari progetti, tuttavia ho qualche preoccupazione su di loro. Vale a dire, quanto è sicuro il mio codice da occhi curiosi / indiscreti, e ho bisogno di possedere un servizio fail-safe, nel caso in cui uno si addormenta durante la notte, o semplicemente ha enormi problemi di dati? Questo non era in realtà un problema finché non ho letto le esperienze con Mozy.com di qualcuno. , che sebbene non sia un servizio di repository di codice, l'archiviazione dei dati è l'archiviazione dei dati.

Se usi / raccomandi un tale servizio, quale consiglieresti? Sono aperto ad usare qualsiasi sistema, sia esso Mercurial, SVN, GIT, TFS, ecc., Purché abbia un'opzione client Windows e Mac (il web-based sarebbe un bel "bonus"). E, soprattutto, perché?

    
posta Hugo 02.10.2010 - 17:22
fonte

2 risposte

8

Il vantaggio di un sistema distribuito (Git, Mercurial, Bazaar) è che anche se il tuo host remoto scompare completamente, avrai comunque la cronologia completa del repository localmente, dalla quale puoi ricominciare da capo altrove. Con qualcosa come Subversion, se perdi il server avrai solo la copia funzionante, che è meglio di niente ma significa che hai perso la cronologia del progetto.

Uso GitHub per progetti open source e sono molto soddisfatto. Non uso GitHub per progetti commerciali poiché il loro prezzo diventa costoso rapidamente per il modo in cui utilizzo Git (un sacco di piccoli repository), quindi ospita il mio server utilizzando Gitosis.

Esistono alternative simili per Mercurial ( BitBucket ) e Bazaar ( Launchpad ).

    
risposta data 02.10.2010 - 18:05
fonte
4

Per quanto riguarda la prima domanda, si tratta di quanto pensi di aver bisogno di proteggere il tuo codice, se il servizio online non funziona, hai ancora copie locali. Se vai con i nuovi sistemi distribuiti avrai tutta la cronologia locale. Personalmente ho un account economico su wush.net per scopi di collaborazione, tutto il resto è "solo" supportato localmente qui.

Per quanto riguarda la tua seconda domanda, scegli quella con il miglior cliente là fuori, ho avuto la tentazione di passare a git (da svn) ma tnn tortoise per Windows funziona così bene che non sembra valga la pena. Usa quello che impone il minimo di spese generali al tuo modo di lavorare. Sia perché è integrato nell'IDE che stai utilizzando o in quello con cui sei più a tuo agio.

Esistono siti commerciali a basso costo per la maggior parte dei sistemi di controllo delle versioni, e presumo che in realtà tu voglia programmare e non giocare con i sistemi vcs, quindi scegli quello che pensi faccia per fare il minimo lavoro.

Anche in questo caso preferisco ancora SVN, principalmente a causa di Tortoise (Windows Desktop) e Ankh (Visual Studio Integration), sul mac XCode 3 posso fare SVN e ci sono un paio di client decenti disponibili.

    
risposta data 03.10.2010 - 00:57
fonte

Leggi altre domande sui tag