Domanda

Sono interessato a sapere quali strategie le persone hanno per mantenere il proprio codice E lavorare su più macchine. Ad esempio, ho un PC desktop con XP, un macbook con OSX e VMWare con XP e un laptop di vendita per l'esecuzione di demo di prodotti. Voglio sapere come posso sempre averli sincronizzati. Subversion è una possibilità per questo, ma lo trovo meno utile per gestire i file binari - forse ho trascurato qualcosa qui. Cosa usano gli altri in quanto devono avere problemi simili? Conservano tutti i file su un'unità USB e mai sul file system locale. Non sono sempre online, quindi l'archiviazione remota non è un'opzione.

È stato utile?

Soluzione

Come altri hanno già detto, sovversione è la soluzione migliore per il codice. Per i file binari / non di codice, trovo molto utile DropBox . Memorizza le revisioni, ha un ripristino, una condivisione facile, ecc. Fondamentalmente un SVN automagico e web-friendly. Non doverci pensare è il vantaggio più grande per me.

Altri suggerimenti

Uso mercurial per mantenere sincronizzati i miei file di lavoro. Non è eccezionale nemmeno per i grandi binari, ma mi consente di impegnarmi senza essere online e mi consente di raggruppare / unire versioni diverse in modo semplice.

Ah, il vecchio dibattito VCS.

Il modo più semplice per condividere / sincronizzare il codice sorgente è usare una sorta di VCS (Version Control System) - questo ti dà molti vantaggi rispetto alla possibilità di mantenere sincronizzati gli elementi. Ci sono molti VCS là fuori, io personalmente uso Bazaar-NG e Subversion - anche se ti suggerirei di provare alcuni e vedere come ti senti a usarli.

Per sincronizzare i file generali, soprattutto se è solo per te, consiglierei di usare " DropBox " ( http://www.getdropbox.com/ ) - L'ho usato per l'ultima settimana o giù di lì, e rende la sincronizzazione delle mie macchine multiple con un certo set di file molto più semplice.

Ha anche alcune funzionalità extra che potrebbero essere utili anche per la collaborazione, ma non le ho ancora provate.

Subversion funziona alla grande nel nostro ufficio per vendite, gestione dei progetti, progettazione e file di codice.

Conservo i miei dotfile ( .zshrc , ecc.) in un repository Git che è stato estratto nel mio homedir. Faccio anche lo stesso per i file LaTeX che comprendono il mio lavoro di classe.

Ho messo build importanti nel controllo del codice sorgente - va bene per i file binari.

Per la maggior parte dei file incluso il codice sorgente utilizziamo Subversion. E 'davvero grandioso.

Se sono presenti file più grandi o documenti relativi alla gestione del progetto che vengono utilizzati da persone che non hanno accesso al sistema di controllo del codice sorgente, utilizziamo Microsoft SharePoint. Ciò è particolarmente utile se lavori con persone esterne alla tua azienda.

Conservo tutto il mio lavoro crittografato su una chiavetta USB. Ha anche una partizione Linux avviabile in modo da poter entrare in un ambiente di sviluppo di lavoro ragionevole da qualsiasi macchina, come un laptop di lavoro in prestito con alcuni software da portare a una conferenza che non posso spostare sulla mia macchina.

Quando hai più persone che lavorano sullo stesso codice, lo metto in un repository Subversion centrale e imposto degli script (in Windows potresti usare la funzione di esecuzione automatica per la chiavetta USB) per sincronizzare le cose tra il repository e un Chiave USB sempre portata con sé.

Il punto principale che vedo reg. usando SVN come repository centrale per i file binari, è che se quei file hanno dimensioni ragionevoli, ci vorrà del tempo per essere sincronizzati sulla rete. Quindi, se non vuoi passare il tempo ad aspettare che i tuoi file arrivino sulla rete, qui i mattoni per un'altra soluzione di mirroring:

Non è possibile trovare uno strumento migliore quando si tratta di sincronizzare un Data-Tanks con molti altri "locali" copie.

Usalo per crittografare il tuo USB-Tank nel caso lo lasci cadere da qualche parte.

FolderShare ( http://foldershare.com ) è utile anche per la sincronizzazione dei file. Lo uso per mantenere i documenti, ecc. Sincronizzati tra il mio laptop e il mio desktop, per esempio.

Naturalmente, soprattutto per il codice ciò non elimina la necessità del controllo del codice sorgente.

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