GitHub vs Bitbucket : lequel convient à votre équipe de développement ?
Publié: 2019-04-10Choisir la bonne plate-forme de contrôle de source pour votre équipe est l'une des décisions les plus importantes que vous allez prendre. Il y a de fortes chances que vous choisissiez Git pour le logiciel de contrôle de version (VCS) lui-même, mais la plate-forme où réside le code est tout aussi importante. Plusieurs fois, cela se résume à Bitbucket vs GitHub. Au fil des ans, les deux ont développé des communautés et des bases d'utilisateurs solides. Dans cet article, nous souhaitons examiner les deux plates-formes pour voir laquelle répondrait le mieux aux besoins de votre équipe de développement.
GitHub vs Bitbucket : les bases
Si vous êtes un nouveau venu sur Git, GitHub et Bitbucket, vous pouvez consulter notre guide du débutant sur Git. Il vous guidera à travers les principes fondamentaux et vous préparera à comprendre ce qui se passe dans cet article.
Si vous vous résumez à la différence la plus basique et la plus fondamentale entre GitHub et Bitbucket, c'est la suivante : GitHub se concentre sur le code public et Bitbucket est pour le privé. Fondamentalement, GitHub a une énorme communauté open source, et Bitbucket a tendance à avoir principalement des utilisateurs d'entreprise et d'affaires.
Cela ne veut pas dire que vous ne pouvez pas avoir de référentiel privé sur GitHub (vous le pouvez). Ou que vous ne pouvez pas publier votre code publiquement sur Bitbucket (encore une fois, vous le pouvez). Cependant, la majorité des utilisateurs ne le font pas. De plus, les valeurs par défaut sont également définies de cette façon : les référentiels publics et privés respectivement.
En dehors de cette différence, les deux plates-formes fonctionnent de manière très similaire. Vous pouvez créer et gérer des référentiels via le site Web ou la ligne de commande, vous connecter avec une authentification à deux facteurs (2FA), inviter des collaborateurs, ouvrir des problèmes et des discussions, créer/fusionner des demandes d'extraction et gérer généralement toutes les choses fondamentales dont vous auriez besoin. le site Web. Ils sont super similaires de cette façon. Cela dit, examinons les spécificités de chaque plate-forme afin que vous puissiez prendre la décision la plus éclairée possible.
Bitbucket

Étant donné que Bitbucket est un produit Atlassian (les créateurs de Trello et d'autres applications), vous disposez d'une interface fluide et claire dès que vous vous connectez. Vous voyez immédiatement qu'ils se concentrent sur les équipes professionnelles en tant que solution tout-en-un pour développement de logiciels. Voyons comment.
1. Pas seulement Git

GitHub, évidemment, est un hub pour le contrôle de version git. BitBucket, en revanche, prend en charge plus que git. Vous pouvez également suivre vos référentiels dans Mercurial, un autre système de gestion de contrôle de version populaire. Il ne prend pas en charge SVN, un autre système majeur, mais au moins avec Bitbucket, vous avez le choix.
2. L'interface

Utiliser le site Web de Bitbucket est tout simplement merveilleux. C'est facile et simple, et vous savez toujours ce qui se passe. Le site Web de GitHub fonctionne, mais ce que vous devez faire pour accomplir certaines choses n'est pas toujours clair. C'est rarement le cas avec Bitbucket. Une barre latérale vous indique clairement où vous êtes et ce que vous pouvez faire. Notez qu'il ne s'agit que du côté graphique du site Web - les deux utilisent les mêmes commandes git lorsque vous y accédez via la ligne de commande.
4. Client de bureau

Un domaine qui est étonnamment absent de Bitbucket d'Atlassian est un client de bureau (GitHub en fait un, cependant). Alors que de nombreux utilisateurs utiliseront par défaut l'interface de ligne de commande et le contrôle fin qu'elle donne sur la gestion des versions de votre logiciel, il y en a encore beaucoup qui aiment vraiment la sensation et l'interaction d'une application git. Si vous optez pour Bitbucket, vous n'obtiendrez pas un programme propriétaire, mais plutôt un programme open source appelé Sourcetree.
Sourcetree est une bonne chose. Cela fonctionne, c'est fluide et c'est gratuit. Atlassian n'a peut-être pas réussi, mais cela n'a pas d'importance. Quoi qu'il en soit, ni le client de GitHub ni Sourcetree ne se sentent aussi robustes que la CLI si vous venez de là. C'est un bon moyen, cependant, d'initier de nouvelles personnes à git et de les intimider un peu moins.
5. Wikis et forums
Avoir un wiki de projet est incroyablement utile. Non seulement votre équipe peut l'utiliser pour les notes internes pendant le développement, mais cela peut également être ouvert au public en tant que source de documentation post-publication. Avec Bitbucket, chaque référentiel peut avoir un wiki. Tout ce que vous avez à faire est de l'activer et vous pouvez le contrôler exactement comme vous le faites pour le reste du référentiel.

De plus, de nombreuses équipes de développement utilisent des tableaux Kanban pour la gestion de projet. GitHub propose un onglet Tableaux par défaut, contrairement à Bitbucket. Ce qu'ils font, cependant, c'est vous permettre de lier votre compte Trello à un référentiel, de sorte que vous ayez ce service disponible dans le tableau de bord du site Web. Il intègre n'importe quel tableau Trello que vous possédez déjà, ou vous pouvez en créer un nouveau.

Atlassian dispose également d'un marché d'applications robuste que vous pouvez rechercher pour installer diverses intégrations pour votre projet. Vous pouvez ou non avoir besoin de ce genre de chose, mais il est bon de savoir qu'il est là.
6. Autorisations de succursale
Et enfin, les autorisations de branche. Avec Bitbucket, vous pouvez choisir qui peut travailler sur n'importe quelle branche individuelle. Plutôt que de simplement donner à Karen l'accès au référentiel, vous pouvez lui donner accès à une seule branche. De cette façon, la crainte d'une poussée principale accidentelle est supprimée. Cette fonctionnalité est énorme et est standard avec Bitbucket, même dans leurs forfaits gratuits. Si vous avez une grande équipe et que vous devez gérer les fonctionnalités, les corrections de bogues, les versions, les versions bêta et les différents aspects du projet avec une main délicate.
GitHub

Passant à GitHub, nous devrions probablement mentionner que GitHub est le service avec de loin la plus grande part de marché. En fait, il a été racheté par Microsoft l'année dernière, ce qui a en fait fait migrer les gens hors de la plate-forme - principalement vers Bitbucket. Mais pendant cette période, Microsoft n'a pas affecté le fonctionnement quotidien de la plupart des développeurs, qu'il s'agisse de code privé, interne ou de travail open source.

1. L'interface

Depuis que nous avons commencé avec l'interface de Bitbucket, commençons au même endroit avec GitHub. C'est fonctionnel, et ça marche. Que faut-il dire d'autre ? Ce n'est pas forcément joli, mais ce qui lui manque en style, il le compense en pur utilité. Avec la majorité des utilisateurs de GitHub travaillant via la ligne de commande, l'esthétique du site Web n'est pas vraiment à l'épreuve. Mais vous l'utilisez pour certaines choses assez régulièrement, et cela fonctionne et n'est jamais assez déroutant, mais ce n'est pas tout le temps tout le temps non plus.
2. Client de bureau

GitHub propose son propre client de bureau. En termes d'esthétique et de facilité d'utilisation, le client est beaucoup plus en phase avec l'interface Web de Bitbucket. Comme ci-dessus avec Sourcetree, le client GitHub est idéal pour faciliter les personnes dans git qui n'aiment pas la ligne de commande, mais si vous êtes un utilisateur expérimenté ou avez besoin d'une commande très spécifique qui n'est pas l'une des principales (pull, push, add , commit, checkout, etc.), il y a de fortes chances que vous trouviez l'un ou l'autre client manquant. Cela dit, pour ce qu'il fait, le client GitHub est léger et fait ce qu'il est censé faire.
3. Dépôts privés gratuits
Dans ce qui était autrefois le principal argument de vente de Bitbucket, GitHub propose désormais des référentiels privés gratuits et illimités. Auparavant, seuls les dépôts publics pouvaient être créés gratuitement et les dépôts privés étaient réservés aux membres payants. Maintenant, cependant, vous pouvez en créer autant que vous le souhaitez, totalement gratuitement. Le hic, cependant, est que vous ne pouvez avoir que 3 contributeurs au repo (sans vous compter). Donc, si vous faites partie d'une grande équipe, vous allez payer, peu importe.
Mais pour les amateurs, les personnes qui ont besoin de partager leur code avec quelqu'un mais ne peuvent pas être publics, et pour les petits projets, les dépôts gratuits illimités sont un ajout incroyable à GitHub qui était une absence très douloureuse jusqu'à cette inclusion.
4. Wikis et forums

Comme mentionné ci-dessus, la propriété de Trello par Atlassian leur donne un léger avantage en leur permettant de s'intégrer directement à Bitbucket. GitHub, cependant, a une solution Kanban intégrée dans l'onglet Projets. Chaque projet que vous créez est son propre tableau, et bien que GitHub ne soit pas aussi riche en fonctionnalités que Trello de loin, beaucoup de planification et de documentation peuvent se produire ici car vous pouvez utiliser le balisage pour styliser tout ce dont vous avez besoin dans chaque carte.

Une faiblesse de GitHub par rapport à Bitbucket, cependant, est que les référentiels privés ne peuvent pas avoir de wiki. Eh bien, reformulons cela : les dépôts privés et gratuits ne peuvent pas avoir de wiki . Si vous avez un dépôt public gratuit, vous pouvez avoir un wiki. Si vous êtes un membre payant, vos dépôts privés peuvent avoir un accès wiki. Bien que ce ne soit pas un problème pour beaucoup de gens, cela peut être un peu ennuyeux lorsque vous devez suivre quelques étapes de hacky pour que le fichier Lisez-moi, les tableaux de projet et les problèmes fonctionnent comme une documentation.
5. Limite de stockage élevée
Disons d'abord ceci : git n'est pas un utilitaire de sauvegarde . Vous n'utilisez pas git pour le stockage en ligne ou les sauvegardes. C'est inefficace pour cela, et cela embourbe les serveurs et vos ordinateurs. Cela dit, cependant, lorsque vous obtenez un grand nombre de commits, de push et de branches, votre repo peut commencer à emballer une masse importante.
Un avantage de GitHub est que vous n'êtes pas facturé pour ce stockage. Même avec un forfait gratuit. Il existe un plafond strict de 100 gigaoctets sur les dépôts GitHub, bien qu'ils recommandent qu'il soit inférieur à 1 Go (ce qui sera le cas pour beaucoup d'entre eux). Les téléchargements de fichiers sont limités à 100 Mo pour la ligne de commande et à 25 Mo pour les téléchargements Web.
Bitbucket, cependant, n'autorise les utilisateurs gratuits qu'à 1 Go au total. Au lieu de vous demander de le garder en dessous de 1 Go, puis de vous envoyer un e-mail lorsque vous atteignez 75 ans (ce qui est une très large gamme et un choix étrange), Atlassian vous pousse vers les forfaits payants à 1 + Go.
Maintenant, cela fait 1 Go par dépôt , vous pouvez donc avoir plusieurs dépôts gratuitement comme ça. Mais vous n'avez pas à vous en soucier avec GitHub. Les deux offrent également des solutions de fichiers volumineux (Bitbucket est ici et GitHub est ici).
GitHub vs Bitbucket : le gagnant ?
Je ne pense pas qu'il y en ait un. Bien que les services aient une sensation absolument différente pour eux et qu'ils ciblent absolument des données démographiques différentes, vous obtiendrez un bon service et effectuerez votre travail, que vous optiez pour Bitbucket ou GitHub.
En fin de compte, vous ne vous tromperez pas dans votre choix. Si vous êtes une petite équipe de développement, l'un ou l'autre fonctionnera presque exactement de la même manière pour vous. Mais, si vous débutez avec git, Bitbucket est un peu plus tolérant et facile à utiliser à mesure que vous apprenez le flux de travail. Si vous êtes intéressé par le développement open source, GitHub est le hub principal pour cela.
En termes de solutions d'affaires… c'est un toss-up. Les forfaits payants sont assez similaires. Il est difficile de faire une quelconque recommandation à ce sujet. Bitbucket est en quelque sorte spécialisé dans les clients commerciaux, offrant une solution tout-en-un via la suite globale d'Atlassian, mais GitHub étant la principale plate-forme de code open source et public, si votre entreprise est impliquée dans cela, ils peuvent être la voie à suivre .
En réalité, ni l'un ni l'autre n'est un mauvais choix pour vous et vos besoins de contrôle de source. Vous ne pouvez pas vous tromper avec l'un ou l'autre, honnêtement.
Quels logiciels et plateformes de contrôle de version préférez-vous, vous et votre équipe ? Dites-nous pourquoi dans les commentaires !
L'article présente une image de Teguh Jati Prasetyo / shutterstock.com
