Skip to main content

Branches

Utilisez des branches dans GitHub pour isoler le travail de développement, gérer les branches par défaut et collaborer efficacement à l’aide de demandes de tirage et de protections de branche.

À propos des branches

Les branches vous permettent de développer des fonctionnalités, de corriger des bogues ou d’expérimenter en toute sécurité de nouvelles idées dans une zone autonome de votre dépôt.

Pour créer une branche, vous partez toujours d’une branche existante. En règle générale, vous pouvez créer une branche à partir de la branche par défaut de votre dépôt. Vous pouvez ensuite travailler sur cette nouvelle branche indépendamment des changements apportés au dépôt par d’autres personnes.

Une branche que vous créez pour créer une fonctionnalité est communément appelée branche de fonctionnalité ou branche de rubrique. Consultez « Managing branches within your repository ».

Vous pouvez également utiliser une branche pour publier un GitHub Pages site. Consultez « Qu’est-ce que GitHub Pages ? ».

Vous devez disposer d’un accès en écriture à un dépôt pour créer une branche, ouvrir une demande de tirage (pull request) ou supprimer et restaurer des branches dans une demande de tirage. Consultez « Autorisations d’accès sur GitHub ».

À propos de la branche par défaut

Quand vous créez un référentiel avec du contenu sur GitHub, GitHub crée ce référentiel avec une seule branche. Cette première branche du dépôt est la branche par défaut. La branche par défaut est la branche qui GitHub s’affiche lorsque quelqu’un visite votre référentiel. La branche par défaut est également la branche initiale vers laquelle Git bascule localement quand une personne clone le dépôt. À moins que vous n’indiquiez une autre branche, la branche par défaut d’un dépôt est la branche de base pour les nouvelles demandes de tirage et les nouveaux commits de code.

Par défaut, GitHub nomme la branche main par défaut dans n’importe quel nouveau référentiel.

Vous pouvez changer la branche par défaut d’un dépôt existant. Pour plus d’informations, consultez « Changement de la branche par défaut ».

Vous pouvez définir le nom de la branche par défaut pour les nouveaux dépôts. Pour plus d’informations, consultez Gestion du nom de branche par défaut pour vos dépôts, Gestion du nom de branche par défaut pour les dépôts de votre organisation et Application de stratégies de gestion des dépôts dans votre entreprise.

Utilisation de branches protégées

Les branches protégées aident les mainteneurs à appliquer des règles sur des branches importantes. Une branche protégée peut bloquer les push ou suppressions forcées, exiger des vérifications d’état, exiger des révisions, exiger l’approbation du propriétaire du code ou exiger des validations signées avant que les modifications puissent fusionner.

Ces protections aident les équipes à maintenir les branches importantes stables et à clarifier les attentes avant la fusion d’une demande de tirage. Pour voir si votre demande de tirage peut être fusionnée, cochez la case de fusion en bas de l’onglet Conversation de la demande de tirage. Voir À propos des branches protégées.

Remarque

Si vous êtes administrateur de dépôt, vous pouvez fusionner des demandes de tirage sur des branches dotées de protections activées même si la demande de tirage ne satisfait pas aux exigences, sauf si les protections de branche ont été définies sur « Inclure les administrateurs »

Comparaison des branches dans les demandes de tirage

Une demande de tirage compare les modifications proposées sur la branche head avec la branche de base. Lorsque vous créez votre demande de tirage, vous pouvez modifier la branche de base par rapport à laquelle vous comparez vos modifications. L’onglet Fichiers modifiés indique ce qui changerait si la demande de tirage a été fusionnée.

Les vues Diff aident les réviseurs à comprendre les modifications sans lire chaque validation. Vous pouvez afficher un diff unifié, fractionner les différences, les différences riches ou les différences sources ; ignorer les modifications d’espace blanc ; ou filtrez les fichiers pour vous concentrer sur les modifications les plus pertinentes.

Capture d’écran de l’onglet « Fichiers modifiés » d’une pull request. Le menu « Vue Diff » est indiqué en orange foncé.

Les différences peuvent ne pas s’afficher si une demande de tirage dépasse les limites de différences de référentiel ou si un fichier est masqué par une règle dans le fichier .gitattributes du référentiel. Consultez Limites du dépôt et Personnalisation de l’affichage des fichiers modifiés sur GitHub.

Comparaisons des différences Git sur trois points et deux points

La git diff commande prend en charge deux méthodes de comparaison. Les demandes de tirage (pull request on GitHub show a three-dot diff).

MéthodeCommandCe qu’il compare
Trois pointsgit diff A...BValidation courante la plus récente des deux branches (base de fusion) et de la version la plus récente de la branche de rubrique.
Deux pointsgit diff A..BÉtat le plus récent de la branche de base (par exemple main) et la version la plus récente de la branche de rubrique.

Un différence sur deux points compare deux références committish Git, telles que des SHAs ou des OID, directement entre elles. Sur GitHub, les références de validation Git dans une comparaison de différences à deux points doivent être envoyées au même référentiel ou à ses fourches.

Consultez les options de différences Git à partir du site de livre Git Pro .

À propos de la comparaison à trois points sur GitHub

Étant donné que la comparaison à trois points utilise la base de fusion, elle se concentre sur « ce qu’une demande de tirage introduit ».

Lorsque vous utilisez une comparaison sur deux points, la différence change lorsque la branche de base est mise à jour, même si vous n’avez apporté aucune modification à la branche de rubrique. Une comparaison à deux points se concentre également sur la branche de base, qui peut apporter les modifications introduites par la branche de rubrique plus difficile à comprendre.

En revanche, une comparaison à trois points montre les modifications introduites par la branche de rubrique depuis les branches divergentes.

Fusion fréquente

Pour éviter toute confusion, fusionnez fréquemment la branche de base (par exemple) maindans votre branche de rubrique. Lorsque vous fusionnez la branche de base, les différences affichées par des comparaisons à deux points et à trois points sont identiques. Nous recommandons de fusionner une requête de tirage dès que possible. Cela encourage les contributeurs à réduire les demandes de tirage, ce que nous recommandons en général.

Lectures complémentaires