Git Svn – Interoperabilità tra repository diversi
Se siete in una fase di passaggio da svn a git o se i vostri clienti rimangono ancorati ad svn spesso sarete obbligati ad utilizzare entrambi i sistemi.
Ma c’è una soluzione che vi permette di avere i vantaggi di git pur lavorando su un repository svn.
Esiste un comando di git in grado di gestire un rapporto bidirezionale tra un repository git e uno svn. Il comando in questione è “git svn“.
Grazie a questo comando sarete in grado di mantenere un vostro repository locale puramente git ma poi pushare le vostre modifiche su un repository remoto svn.
Ecco una breve liste delle corrispondenze tra i comandi principali di svn e quelli di git svn:
- CHECKOUT => GIT SVN CLONE: inizializza il repository git locale e scarica il repository remoto.
- COMMIT => GIT SVN DCOMMIT: questo comando corrisponde al push di git e invia al repository remoto svn le modifiche che sono state fatte; ovviamente, come per “git push”, prima è necessario aver fatto dei commit locali.
- UPDATE => GIT SVN REBASE: permette di scaricare gli aggiornamenti del repository remoto facendo dei merge con il repository locale.
Con questi tre semplici comandi si sarà già in grado di soddisfare la maggior parte degli scambi tra i due diversi repository.
Eventualmente, per una lista più completa di tutte le operazioni possibili, e delle varie opzioni dei comandi, si rimanda a questo link.