Quel outil faut-il choisir entre SVN et Git ? La réponse n’est pas aussi simple et reste liée à vos objectifs. Les deux systèmes se distinguent de par leurs structures et leurs procédures de travail. Le tableau suivant illustre les oppositions majeures qui existent entre les deux outils :
| SVN | Git |
---|
Versionning | Centralisé | Décentralisé |
Dépôt | Un dépôt central dans lequel les copies de travail sont créées | Des copies de dépôt, présentes localement, dans lesquelles il est possible de travailler |
Droit d’accès | Basé sur le chemin | Pour le répertoire complet |
Suivi des modifications | Enregistre des données | Enregistre des données |
Journal de modifications des données | Complet seulement dans le dépôt. Les copies de travail ne contiennent que la version la plus récente. | Le dépôt et les copies de travail contiennent l’historique complet. |
Connectivité au réseau | Pour tous les accès | Nécessaire seulement pour réaliser une synchronisation |
Voici les avantages respectifs des deux systèmes :
Il se peut que Git vous corresponde mieux si vous…
- n’avez pas besoin d’une connectivité au réseau de manière continue par exemple pour pouvoir travailler sur votre projet de n’importe où ;
- voulez être protégé en cas de panne ou de perte du dépôt principal ;
- n’avez besoin en aucun cas de droits de lecture ou d’écriture pour des répertoires particuliers (il est tout de même possible avec Git, quoique compliqué, de configurer ces accès) ;
- attachez beaucoup d’importance au transfert rapide des modifications.
Mais Subversion peut se révéler être une meilleure option si vous…
- avez besoin de droits d’accès basés sur des chemins pour chaque domaine de votre projet ;
- désirez regrouper tout votre travail dans un endroit centralisé ;
- travaillez avec beaucoup de fichiers binaires ;
- désirez enregistrer complètement les structures des répertoires vides (Git n’autorise pas cette action étant donné qu’il ne possède aucun contenu).
Si les caractéristiques énumérées ci-dessus ne sont pas pertinentes pour votre projet, nous vous conseillons de procéder à un test des deux outils de versionning. Quoi qu’il en soit, GitHub est le premier fournisseur d’hébergement et il est soutenu par une grande communauté d’utilisateurs ce qui forme en soi un avantage majeur.