The GitHub mascot—a cat-like creature with five tentacles—wearing glasses and holding an apple and a pointer.
Agence web » Actualités du digital » Quelle est la différence et y a-t-il des alternatives?

Quelle est la différence et y a-t-il des alternatives?

Résumé

  • GitHub est une plate-forme pour l'hébergement et le partage de code, avec des fonctionnalités gratuites d'hébergement Web et de médias sociaux.

  • Git est un système de contrôle de version qui suit les modifications de code et est utilisé pour conduire GitHub.

  • D'autres hôtes Git – comme Gitlab et Bitbucket – sont disponibles, mais Github est de loin le plus populaire.

Github est devenu si omniprésent que vous pourriez penser que Git est une sténographie interchangeable. Mais les deux sont très différents et des alternatives à chacune sont disponibles, sinon aussi populaires.

Qu'est-ce que Github?

GitHub est une application Web qui permet aux développeurs d'héberger, de partager et de contribuer du code pour les logiciels. Beaucoup de ces projets sont des open source et invitent les contributions du public. GitHub a une orientation communautaire avec les comptes d'utilisateurs, des demandes de traction pour gérer les modifications de code, les trackers de problèmes et les wikis pour la documentation.

Le site a été lancé en tant que produit indépendant en 2008, avant que Microsoft ne l'achète en 2018. Depuis son lancement, Github a gagné en popularité à un point tel qu'il est maintenant la maison de facto pour de nombreuses applications populaires.

La fonctionnalité GitHub Pages offre un hébergement Web gratuit pour les projets, afin qu'ils puissent être complètement autonomes sur la plate-forme, sans avoir besoin d'un site Web séparé. Vous pouvez même effectuer des modifications limitées directement sur GitHub. Selon la nature de votre projet, vous pouvez également cloner un référentiel pour modifier et tester le code localement.

Le service Web GitHub utilise Git comme une technologie sous-jacente pour suivre ses projets.

Alors, qu'est-ce que Git?

GIT – Un système de contrôle de version distribué (VCS) – lancé en 2005, et a été développé par Linux Kernel Creator, Linus Torvalds. Git est un logiciel open source qui suit les changements de code au fil du temps. Il stocke les différences entre les versions de chaque fichier, c'est donc comme avoir un nombre illimité de versions enregistrées. Git utilise le terme «référentiel» pour désigner une collection de fichiers qui composent un projet.

Les développeurs utilisent normalement GIT sur la ligne de commande via la commande git. Ce programme a un grand nombre d'options, avec un vaste tableau de sous-communs pour effectuer diverses fonctions de bas niveau sur un référentiel GIT.

Par exemple, vous pouvez transformer un répertoire normal de fichiers en un référentiel GIT à l'aide de cette commande:

        git init

Un flux de travail typique implique de modifier des fichiers, puis de commettre des modifications à Git pour enregistrer une version de chaque fichier:

        git add file-to-track.c

git commit -m "Fixed a bug with the checkout process"

Vous pouvez cloner un projet GitHub, y travailler localement et pousser vos modifications au référentiel distant sur les serveurs de GitHub. Vous pouvez le faire en utilisant le même mécanisme pour tout référentiel GIT, qu'il soit hébergé sur GitHub, un service concurrent similaire ou un serveur local.

Si vous n'êtes pas à l'aise d'utiliser la commande git dans un terminal, vous pouvez plutôt utiliser un client GUI GIT. L'application GitHub Desktop fonctionne avec n'importe quel référentiel GIT, mais il fonctionne bien avec le service GitHub par défaut.

En rapport

Devriez-vous utiliser un client GUI GIT?

Git est compliqué.

Dois-je utiliser les deux – ou l'un ou l'autre?

Tout d'abord, vous devez comprendre que vous pouvez utiliser GitHub pour télécharger un logiciel sans compte d'utilisateur. La plupart des projets vous permettent de télécharger une application exécutable via la page des versions et vous pouvez toujours cloner un référentiel public pour obtenir une copie complète de son code source.

Si vous cherchez à maintenir un projet public open-source, GitHub est un excellent endroit pour l'héberger, mais ce n'est pas la seule option. En plus de gérer votre projet manuellement, vous pouvez utiliser des hôtes alternatifs comme GitLab ou Bitbucket. Ces services font plus ou moins la même chose que Github.

Parce que ces services sont construits au-dessus de Git, le déplacement de votre référentiel vers un hôte différent – ou en utilisant plus d'un – est assez simple. Cela signifie que vous pouvez toujours déplacer votre code source, mais les fonctionnalités que GitHub ajoute en plus de Git – des pages ou des pages Wiki, par exemple, sont liées au service. Par conséquent, vous pouvez choisir de minimiser votre utilisation de ces fonctionnalités pour éviter de vous verrouiller dans GitHub.

Cependant, l'API de GitHub est complète, donc vos données peuvent être disponibles librement – avec un peu de travail. Vous pouvez accéder aux problèmes à l'aide de l'API et télécharger leurs données associées pour migrer le suivi des problèmes vers une autre plate-forme. Les wikis du projet sont eux-mêmes des référentiels Git, vous pouvez donc les cloner et les exporter si nécessaire.

En rapport

Qu'est-ce qu'une API et comment les développeurs les utilisent-ils?

Vous avez probablement vu le terme « API » se présenter.

Si vous souhaitez utiliser un VCS différent, vous devrez regarder plus loin que GitHub. Beanstalk est une application Web qui prend en charge Git et l'une de ses alternatives, Subversion (SVN).

Il existe d'autres alternatives à Git, comme Mercurial. Cependant, ceux-ci sont beaucoup moins populaires que le GIT, et ne valent vraiment la peine d'être utilisés si vous avez besoin de fonctionnalités de niche spécifiques. Pour la plupart des projets, en particulier les nouveaux, Git devrait être votre VC par défaut, et l'excellent support de Github pour cela ne fera que renforcer votre choix.

★★★★★