Non facilmente: dovresti tenere ognuno di essi in sincrono con l'altro, tramite una moltitudine di script di hook ed eventi. È possibile, ad esempio, effettuare il checkout da subversion, fare un hg init
in quella cartella e lavorare temporaneamente usando mercurial, e poi eventualmente tornare a subversion quando si è soddisfatti (assicurandosi di non aggiungere e commit e file .hg
) . Inoltre, a seconda del numero di sviluppatori, è possibile entrare in tutti i tipi di problemi con i conflitti derivanti dall'unione se due sviluppatori si affidano allo stesso file con diversi sistemi di controllo versione.
Poiché Subversion (e CVS) sono sistemi di controllo della versione centralizzati, e git, bazaar e mercurial sono tutti distribuiti, tenerli sincronizzati richiederebbe una copia master per ciascuno.
Gli strumenti VCS citati sono tutti abbastanza simili sulla riga di comando (anche se CVS in realtà non dovrebbe essere più utilizzato), quindi la curva di apprendimento per gli altri utenti non è particolarmente ripida.
Le persone che vogliono possono facilmente tirare dal repo, poi fare 'darcs init' o' init' git o 'import' svn nella loro copia locale, se lo desiderano. Difficilmente puoi soddisfare le preferenze di tutti sul lato server, e mantenere i tuoi repository master in sincronismo è fastidioso e richiede molte risorse. – tripleee