Qu'est-ce qu'un référentiel ?
Un référentiel est un stockage numérique centralisé que les développeurs utilisent pour effectuer et gérer les modifications du code source d'une application. Les développeurs doivent stocker et partager des dossiers, des fichiers texte et d'autres types de documents lorsqu'ils développent des logiciels. Un référentiel possède des fonctionnalités qui permettent aux développeurs de suivre facilement les modifications du code, de modifier simultanément les fichiers et de collaborer efficacement sur le même projet depuis n'importe quel endroit.
Quelle est l'importance d'un référentiel ?
Un référentiel permet aux équipes de développement logiciel d'apporter plusieurs modifications au code de programme d'un logiciel sans compromettre le code source principal. Au lieu d'appliquer directement les modifications à la branche principale, les équipes utilisent les fonctionnalités d'un référentiel pour modifier et vérifier les modifications. Cela réduit les conflits liés à la fusion lorsque deux développeurs ou plus modifient la même partie du code.
Les développeurs utilisent également des référentiels pour introduire de nouvelles fonctionnalités ou de nouveaux correctifs de bogues sans affecter la version de production de l'application. Ils créent une nouvelle branche ou copient le code source d'origine en tant que référentiel local sur lequel travailler. Ainsi, les développeurs s'assurent que les nouvelles modifications sont correctement testées avant d'être présentées aux clients.
Avantages des référentiels pour les entreprises
En utilisant des référentiels pour le développement d'applications, les entreprises gagnent en agilité et en réactivité face à l'évolution des exigences des clients. Les développeurs peuvent rapidement travailler sur de nouvelles fonctionnalités sans affecter la stabilité de l'application en direct. Les référentiels permettent aux développeurs d'introduire des modifications et de résoudre les problèmes potentiels rapidement. Les entreprises peuvent également coordonner les tâches de développement d'applications entre les développeurs à distance.
Qu'est-ce qu'un référentiel GitHub ?
GitHub est un référentiel basé sur le cloud qui permet aux développeurs de stocker des codes de projet et de travailler dessus de manière organisée. GitHub est conçu sur Git, un système de contrôle de gestion des versions, et comprend des fonctionnalités supplémentaires qui améliorent la collaboration entre les développeurs. Il fournit une IU graphique qui facilite l'utilisation des fonctions du référentiel.
GitHub est également devenu une communauté open source en ligne pour les développeurs. Les développeurs peuvent interagir avec leurs pairs en rejoignant une discussion, en proposant leur aide et en offrant leur expertise dans le cadre de projets publics sur GitHub.
GitHub étant le référentiel le plus populaire et le plus utilisé par les communautés de développeurs du monde entier, ce billet de blog se concentre tout particulièrement sur les référentiels GitHub.
Comment fonctionne un référentiel GitHub ?
Un référentiel GitHub permet aux développeurs de collaborer à distance et de manière distribuée grâce à un outil de contrôle de gestion des versions installé localement. Les développeurs utilisent une interface de ligne de commande afin de mettre en œuvre les fonctions dans Git, un logiciel de contrôle des versions.
Git permet aux développeurs de créer, de gérer et de fusionner les modifications du code avec le code source principal.
Création
Premièrement, les développeurs créent un nouveau référentiel dans le répertoire du projet qui contient les fichiers de code. Ils peuvent également cloner un référentiel Git existant. Le référentiel Git contient généralement un fichier README qui affiche les informations de description du projet.
Configuration
Avant d'apporter des modifications au référentiel local, les développeurs configurent le référentiel en ajoutant des informations telles que le nom d'utilisateur et l'adresse e-mail. Cela permet aux collaborateurs d'identifier l'auteur d'un référentiel Git spécifique. Ensuite, le développeur peut apporter des modifications au code et les enregistrer à l'aide de la commande git commit.
Modification
Les développeurs apportent des modifications au code dans leur référentiel. Au départ, les modifications sont uniquement stockées sur leur système local. Lorsque tout est prêt, les modifications peuvent être fusionnées avec le référentiel central. Si un autre développeur modifie le même fichier, il peut consulter et résoudre manuellement les conflits.
Quelles sont les principales fonctionnalités d'un référentiel GitHub ?
Les référentiels GitHub offrent aux développeurs des capacités centralisées de gestion des versions, de partage et de collaboration de code grâce aux fonctionnalités suivantes.
Branchement
Le branchement est le processus consistant à copier le référentiel sur GitHub. Par défaut, un référentiel GitHub dispose d'une branche principale contenant les codes et fichiers sources d'origine chargés par les développeurs au préalable. S'ils doivent modifier une partie spécifique du code, ils créent une branche contenant une copie complète des fichiers de code et la nomment en conséquence.
Les développeurs peuvent créer plusieurs branches à partir du référentiel principal. Par exemple, les développeurs pourraient créer une branche de fonctionnalités afin d'écrire des codes pour de nouvelles fonctions logicielles et une autre branche pour résoudre les problèmes signalés.
Commit
La fonctionnalité Commit permet aux développeurs d'enregistrer les modifications apportées aux fichiers de code dans la branche. GitHub permet aux développeurs de décrire les nouvelles modifications apportées au code lorsqu'ils les valident. Les membres de l'équipe peuvent connaître les modifications ainsi que les raisons de leur existence lorsque les développeurs les décrivent.
Demandes de tirage
Une demande de tirage envoie un message officiel aux autres contributeurs qui travaillent sur la branche principale ou au propriétaire de la branche pour vérifier les modifications validées. Les autres contributeurs peuvent vérifier la validation d'origine, la commenter ou y apporter d'autres modifications avant de la soumettre pour la fusion. Lorsqu'ils vérifient une demande de tirage, les contributeurs peuvent voir les modifications apportées au code d'origine.
Fusion
La fusion est le processus GitHub qui applique les modifications validées à la branche principale. Elle intervient lorsque les contributeurs ont vérifié et approuvé les modifications validées. Ils appellent ensuite la demande de fusion sur GitHub, qui lance une série de vérifications avant de fusionner les modifications avec le code d'origine.
Quels sont les types de référentiels Git ?
Les développeurs peuvent créer deux types de référentiels Git avec des niveaux d'autorisation différents.
Référentiels nus
Un référentiel nu contient uniquement le dossier d'index. Les développeurs ne peuvent pas modifier les fichiers d'un référentiel nu.
Référentiels non nus
Un référentiel non nu stocke des copies des fichiers sources que les développeurs peuvent utiliser et modifier.
Comment AWS prend-il en charge vos exigences en matière de référentiels ?
Avec Amazon Web Services (AWS), AWS CodeCommit est un système de gestion des versions de code en ligne que vous pouvez utiliser pour héberger des référentiels Git privés en toute sécurité. CodeCommit s'intègre à vos outils Git existants afin de créer un pipeline d'intégration et de livraison continues (CI/CD) harmonieux. Voici des exemples d'utilisation de CodeCommit :
- Sécuriser votre code automatiquement avec le chiffrement, qu'il soit en transit ou au repos
- Garder vos référentiels au plus près de l'environnement AWS
- Configurer des flux de collaboration de code sécurisés et évolutifs sur le Cloud AWS
Démarrez avec les référentiels en créant un compte AWS dès aujourd'hui.