Sommaire
|
Le service en ligne GitHub est le plus important fournisseur de dépôt Git à travers le monde. En 2018, il aurait environ 30 millions d'utilisateurs. Il offre la possibilité d'héberger gratuitement des dépôts Git si on accepte que le code source déposé soit accessible au publique et il payant pour ceux ne voulant pas que le code source disponible au public (les entreprises privés par exemple). Ainsi, il est perçu par la communauté open source (projet libres) et par de nombreux particuliers comme hébergeur de choix pour les travaux personnels et le code source de le projet.
Voici les principales caractéristiques de GitHub :
- Gestion de version : GitHub repose sur Git, un système de gestion de version distribué, permettant de suivre les modifications du code, de gérer les versions et de fusionner les changements.
- Dépôts (Repositories) : Les utilisateurs peuvent créer des dépôts pour entreposer et gérer leurs projets de code source. Les dépôts peuvent être publics ou privés.
- Branches : GitHub permet de créer et de gérer des branches pour développer des fonctionnalités ou corriger des bogues sans affecter la branche principale (souvent main ou master).
- Pull Requests : Les pull requests facilitent la collaboration en permettant aux contributeurs de proposer des modifications au code, que les autres membres de l'équipe peuvent examiner et commenter avant de les fusionner.
- Issues : GitHub propose un système de gestion des problèmes (issues) pour suivre les bogues, les demandes de fonctionnalités et les tâches. Les issues peuvent être assignées à des membres de l'équipe et accompagnées d'étiquttes et de commentaires.
- Actions : GitHub Actions permet d'automatiser les flux de travail de développement, tels que les tests, le déploiement et les builds, en définissant des flux de travail de CI/CD dans des fichiers YAML.
- Pages GitHub : GitHub Pages permet de déployer des sites web statiques directement depuis les dépôts GitHub. Ceci est utile pour les projets, la documentation et les blogs.
- Wiki : GitHub offre un espace de wiki pour chaque dépôt, permettant de créer et de maintenir une documentation complète pour le projet.
- Collaborateurs et permissions : Les dépôts peuvent être partagés avec d'autres utilisateurs, avec des niveaux de permissions variés (lecture, écriture, admin) pour contrôler l'accès et les contributions.
- Code Review : GitHub facilite la révision de code grâce aux commentaires sur les lignes spécifiques du code dans les pull requests, permettant aux membres de l'équipe de discuter des modifications proposées.
- Intégrations et API : GitHub propose des intégrations avec divers outils et services tiers, ainsi qu'une API RESTful pour permettre aux développeurs d'interagir programmétiquement avec les dépôts et les fonctionnalités de GitHub.
- Sécurité : GitHub offre des fonctionnalités de sécurité telles que la vérification des vulnérabilités de dépendances, les alertes de sécurité et la gestion des secrets.
- Graphiques et statistiques : GitHub fournit des graphiques et des statistiques pour suivre les contributions au projet, les tendances de développement et les activités des contributeurs.
Développeur
Le site offre de nombreuses facilité pour le programmeur comme un interface Web, la possibilité de voir les différences entre différents commit et dépôt Git d'exemple d'utilisation. Ainsi, par exemple, il existe une panoplie de gitignore en fonction des langages de programmation ou de projet à l'adresse suivante :
https://github.com/github/gitignore |
Enfin, le meilleur outil intégré pour exploiter GitHub sous Windows et Mac OS X demeure «GitHub Desktop».
Historique
Le site a été écrit à l'origine par Chris Wanstrath, PJ Hyett et Tom Preston-Werner en langage de programmation Erlang et avec le cadre d'application Ruby on Rails. Une année après sa fondation, soit en 2009, il atteignait déjà le nombre des 100 000 utilisateurs et l'année suivante, il a atteint la barre des millions de dépôts. En juin 2018, Microsoft a acheté GitHub pour un montant de 7,5 milliard de dollars.
Concurrent
Les concurrents les plus connus sont Gitlab, AWS CodeCommit et Gogs.
Voir également
Serveur ou service logiciel - Git - Introduction
Système d'exploitation - Linux - Références de commandes et de programmes - git
Articles - SVN vs Git