Aujourd'hui, Git domine le marché du contrôle des versions, GitHub étant le référentiel distant de choix proéminent. Certaines personnes utilisent également Bitbucket et Gitlab pour gérer les référentiels. Dans cet article, nous comparons Github et GitLab.
Origines de Git, Github et Gitlab
Initialement, le noyau Linux utilisait Bitkeeper, un système de contrôle de version distribué. Cependant, en 2005, la communauté Linux et Bitkeeper se sont séparées en raison de désaccords. Le noyau Linux avait donc besoin d'une nouvelle solution. Cela a conduit à la naissance de Git, le système de contrôle de version distribué open source.
En 2007, Tom Preston-Werner, Chris Wanstrath et PJ Hyett ont commencé à développer Github. À l'époque, Git n'était toujours pas la puissance qu'il est aujourd'hui. Mais l'équipe GitHub était confiante et ils ont sorti Github en 2008. Aujourd'hui, GitHub prend en charge les référentiels de code pour 80 millions de projets et 27 millions de développeurs.
Gitlab a commencé beaucoup plus tard en 2011. Dès le début, Gitlab a été conçu comme un outil de collaboration avec des aspirations pour aider les développeurs à mettre en œuvre les principes DevOps. La société a été constituée en 2014. Aujourd'hui, Gitlab est utilisé par plus de 100 000 organisations.
Comparaison
GitHub et GitLab sont utilisés pour maintenir les référentiels Git. Naturellement, il y a des chevauchements dans leurs fonctionnalités. Mais il y a aussi quelques différences conséquentes. Si vous essayez de choisir entre Github et Gitlab, voici quelques domaines clés à considérer:
Contrôle d'accès des utilisateurs
GitHub vous donne la possibilité de contrôler l'accès de vos utilisateurs à un certain référentiel. Mais Gitlab a plus de contrôle granulaire. Dans GitHub, vous ne pouvez contrôler l'accès à la lecture et à l'écriture. GitLab vous permet de donner accès à divers composants comme le tracker de bogue ou le système de construction individuellement. Il a une configuration plus robuste pour les grandes organisations et équipes.
Intégration continue et livraison continue (CI / CD)
La concentration de Github est sur le maintien des référentiels. Gitlab a un objectif plus élevé. Il essaie de résoudre les problèmes de DevOps. Il est livré avec un système de construction qui peut être utilisé pour les pratiques CI / CD. Même si vous pouvez utiliser un outil tiers pour créer votre propre pipeline CI / CD avec GitHub, GitLab fournit une solution plus intégrée.
Suivi des bogues
GitHub et GitLab offrent des capacités de suivi des bogues. Vous pouvez facilement utiliser ces outils pour organiser vos tâches d'assurance qualité.
Commencer
Si vous souhaitez transférer vos référentiels actuels vers GitHub, il fournit des outils d'importation pour faciliter la tâche. À l'aide des outils, vous pouvez transférer du code et des actifs de Subversion, Mercurial, TFS, CVS et autres systèmes de contrôle de version. Cependant, la documentation GitHub n'est pas complète. GitLab a également des outils d'importation de référentiel. Et la documentation est meilleure.
Intégration tierce
Les deux outils ont de riches écosystèmes qui prennent en charge l'intégration tierce et les marchés qui vous permettent d'acheter et de vendre des applications et des outils premium.
Support Docker
Gitlab a un meilleur support pour Docker. Le registre des conteneurs GitLab vous donne la possibilité de maintenir facilement vos images Docker.
Communauté
En raison de la longévité et de la popularité de Github, il a une communauté plus forte. Gitlab essaie de faire des progrès en organisant plus d'événements communautaires.
Edition pour entreprise
Les deux sociétés ont des forfaits de niveau d'entreprise et une approche à plusieurs niveaux de la tarification. Le niveau libre GitHub autorise uniquement les référentiels publics. Pour les référentiels privés, GitHub facture 7 $ à 21 $ / utilisateur / mois. Gitlab vous permet gratuitement des référentiels privés, ce qui est un excellent argument de vente pour les petites équipes de développement. Pour plus de fonctionnalités premium, GitLab facture 4 $ à 19 $ / utilisateur / mois. Il a également introduit un nouveau niveau qui aura plus d'outils DevOps au niveau de l'entreprise. Le nouveau niveau coûtera 99 $ / utilisateur / mois.
Github est la force dominante actuelle sur le marché Git, tandis que Gitlab est le challenger. Vous pouvez vous attendre à ce que ces deux technologies continuent de concurrencer. Avant plus d'informations, veuillez regarder cette vidéo animée sur le sujet: