GitHub est une plateforme de collaboration autour du code et des projets logiciels. Elle s’appuie notamment sur Git, un système de gestion de versions qui conserve l’historique des modifications. Git peut être utilisé sans GitHub ; la plateforme ajoute des interfaces, des outils de discussion et des services pour organiser le travail autour des dépôts. Un dépôt regroupe des fichiers et leur historique. Les branches permettent de développer des modifications en parallèle, tandis qu’une demande de fusion présente un ensemble de changements à examiner. Les commentaires, les tests et les validations aident une équipe à décider de leur intégration. Cette organisation facilite aussi le retour sur l’origine d’un problème ou la compréhension d’un choix technique.
Les fonctions d’automatisation peuvent exécuter des contrôles, préparer une version ou accompagner un déploiement. Elles demandent des permissions adaptées : un processus qui lit du code n’a pas besoin des mêmes accès qu’un service chargé de publier une application. Les outils d’assistance comme Copilot apportent une autre dimension au travail des développeurs, sans remplacer la revue et les essais.
GitHub s’inscrit dans l’environnement de Microsoft, mais accueille des projets utilisant de nombreuses technologies. Un dépôt public n’est pas automatiquement libre de toute restriction : sa licence détermine les droits de réutilisation. Les secrets, clés d’accès et données personnelles n’ont pas leur place dans un historique partagé. Retirer un fichier de la dernière version ne suffit pas nécessairement à effacer ses copies ou ses anciennes révisions, ce qui rend la prévention et la gestion des accès particulièrement importantes.