Domanda

Sono stato in esecuzione il mio server home-based per le età per il mio codice personale, e ho provato un sistema o di un altro (SVN, VSS, ecc). Ma di recente, ho apprezzato avendo un po 'di prezioso (senza codice sorgente) dei dati off-site, senza dover continuamente preoccuparsi di backup in caso di guasto hardware, utilizzando servizi come Dropbox, Skydrive, applicazioni Google, ecc.

Questo mi ha fatto desiderare di fare lo stesso con il mio codice sorgente per vari progetti, però, ho un paio di preoccupazioni su di loro. Vale a dire, come sicuro è il mio codice da / occhi curiosi indiscreti, e non ho bisogno di avere forse un servizio di fail-safe, nel caso in cui si va a pancia in su durante la notte, o semplicemente ha problemi enormi di dati? Questo non è stato in realtà un problema fino a quando ho letto di qualcuno esperienze con Mozy.com , che pur non essendo un servizio di repository di codice, memorizzazione dei dati è la memorizzazione dei dati.

Se fai uso / dire ad un tale servizio, che mi consiglia? Sono aperto a utilizzare qualsiasi sistema, sia esso Mercurial, SVN, GIT, TFS, ecc, così a lungo in quanto ha un Windows e un'opzione client per Mac (basato sul Web sarebbe molto bello "bonus"). E, soprattutto, perché?

È stato utile?

Soluzione

Il vantaggio di un sistema distribuito (Git, Mercurial, Bazaar) è che anche se il vostro host remoto non scompaiono completamente, avrai ancora la storia completa repository a livello locale, da cui si può ricominciare da capo altrove. Con qualcosa come Subversion, se si perde il server avrete solo la copia di lavoro, che è meglio di niente, ma significa che hai perso la storia del progetto.

GitHub per progetti open source e sono molto soddisfatto. Io non uso GitHub per i progetti commerciali come il loro prezzo diventa costoso in fretta per il modo in cui io uso Git (un sacco di piccoli depositi), così ho ospitare il mio proprio server utilizzando Gitosis.

Ci sono alternative simili per Mercurial ( BitBucket ) e Bazaar ( Launchpad ).

Altri suggerimenti

Per quanto riguarda la prima domanda, questo si riduce a quanto si pensa che è necessario per proteggere il codice, se il servizio online va pancia in su avete ancora copie locali. Se si va con i sistemi più recenti distribuiti si avrà tutta la storia locale. Personalmente ho un conto economico a wush.net a fini di collaborazione, tutto il resto è "solo" eseguito il backup in locale qui.

Per quanto riguarda la seconda domanda, andare per quella con il miglior client là fuori, sono stato tentato di passare a Git (da SVN), ma tortoisesvn per Windows funziona così bene che non sembra valere lo sforzo. Utilizzare quello che imporrà il meno spese generali per il modo di lavorare. Sia perché è integrato nell'IDE che si sta utilizzando o quello che si sta più bene con.

Ci sono a buon mercato siti commerciali là fuori per la maggior parte dei sistemi di controllo versione, e io parto dal presupposto che si vuole realmente il programma e non violino con i sistemi VCS, in modo da scegliere quello che si ritiene possano far fare il minimo lavoro.

Ancora una volta io personalmente preferisco ancora SVN, soprattutto a causa della tartaruga (Desktop di Windows) e Ankh (Visual Studio Integration), su Mac XCode 3 può fare SVN, e ci sono un paio di clienti decenti disponibili.

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