Maison >outils de développement >git >Explication détaillée de la stratégie git : stratégie de branche, de fusion, de validation, de balise

Explication détaillée de la stratégie git : stratégie de branche, de fusion, de validation, de balise

PHPz
PHPzoriginal
2023-04-07 09:01:121075parcourir

Git est l'un des systèmes de contrôle de version les plus populaires aujourd'hui. Il peut être utilisé comme outil de collaboration pour aider plusieurs personnes à collaborer sur des projets de développement et peut suivre les enregistrements de modification de code de chaque développeur. À mesure que le projet se développe, l'utilisation de Git devient plus compliquée et une stratégie est nécessaire pour nous aider à gérer efficacement le code.

1. Stratégie de branche Git

La stratégie de branche Git est une partie très importante de Git. Elle peut nous aider à terminer notre travail plus efficacement pendant le processus de développement. Certaines personnes aiment regrouper toutes les fonctions d'un projet sous une seule branche pour le développement, mais cela rendra la fusion du code très lourde et sujette aux conflits. Par conséquent, utiliser des branches pour le développement est le choix le plus approprié.

Dans Git, il existe de nombreuses stratégies de branche, telles que : la stratégie de branche à long terme, la stratégie de branche de fonctionnalités, la stratégie de branche de publication, etc. Normalement, nous utilisons une stratégie de branche à long terme comme branche principale, puis développons la branche principale via des branches de fonctionnalités et effectuons un contrôle de version dans la branche de fonctionnalités. Une fois la branche de fonctionnalités développée et testée, le code est publié via la branche de publication.

2. Stratégie de fusion Git

La stratégie de fusion Git est également un élément nécessaire, elle peut nous aider à fusionner le code de différentes branches sans conflits. Dans Git, il existe de nombreuses stratégies de fusion, telles que : la stratégie de validation de fusion, la stratégie de refusion, la stratégie de rebase de fusion, la stratégie de fusion tripartite, etc.

Normalement, nous adopterons la stratégie de fusion à trois voies, qui est une stratégie de fusion du code de deux branches ensemble. Voici le processus de la stratégie de fusion tripartite :

1. Créez une nouvelle branche de fonctionnalités sur la branche principale ;

2 Développez sur la branche de fonctionnalités et soumettez le code ; l'opération Pull de la branche principale, fusionnez le code de la branche de fonctionnalité dans la branche principale ;

4. Si un conflit se produit, vous devez résoudre manuellement le conflit et soumettre à nouveau

5. l'entrepôt distant.

3. Stratégie de soumission Git

La stratégie de soumission Git est également appelée stratégie de gestion des informations de soumission Git. Pendant le processus de développement, nous devons rédiger des messages de validation standardisés pour identifier l'intégralité du contenu du changement. Les informations de soumission standardisées peuvent nous aider à mieux gérer le code et à réduire les erreurs de code et les coûts de maintenance. Ce qui suit est un message de soumission canonique :

<type>(<scope>):<subject>
<BLANK LINE>
<body>
<BLANK LINE>
<footer>

Le type inclut le suivants Plusieurs types : <type>(<scope>):<subject>
<BLANK LINE>
<body>
<BLANK LINE>
<footer>

其中type包括以下几种:

  • feat:新特性;
  • fix:Bug修复;
  • docs:文档变更;
  • style:格式化、缺少分号等;
  • refactor:重构;
  • perf:性能优化;
  • test:测试,包括单元测试和集成测试等;
  • chore:维护性任务。

scope指的是影响区域,可以是一个模块、一个文件、一个函数等。

subject是一个简洁的提交信息概要。

body是对提交信息的更详细的描述。

footer包括Breaking Changes和关闭的issue等信息。

四、Git标签策略

Git标签策略是为了方便版本标识和发布而产生的策略。标签可以为项目中的某个版本打上标记,并且可以通过标签来找回该版本的代码。

在Git中,我们可以用git tag

  • feat : nouvelles fonctionnalités ;
  • fix : corrections de bugs
  • docs : modifications du document
  • style : formatage ; , points-virgules manquants, etc. ;
  • refactor : reconstruction ;
  • perf : optimisation des performances
  • test : tests, y compris les tests unitaires et les tests d'intégration
  • li>
  • corvée : tâches de maintenance.
Scope fait référence à la zone d'influence, qui peut être un module, un fichier, une fonction, etc.

le sujet est un résumé concis des informations de soumission.

body est une description plus détaillée des informations soumises. 🎜🎜le pied de page comprend des informations telles que les dernières modifications et les problèmes résolus. 🎜🎜4. Stratégie de balises Git 🎜🎜La stratégie de balises Git est une stratégie créée pour faciliter l'identification et la publication des versions. Les balises peuvent marquer une certaine version dans le projet et le code de cette version peut être récupéré via la balise. 🎜🎜Dans Git, nous pouvons utiliser la commande git tag pour créer et gérer des balises. Les balises peuvent être divisées en deux types : les balises légères et les balises d'annotation. Une balise légère est simplement un pointeur vers un commit spécifique, tandis qu'une balise d'annotation est un objet Git contenant des informations telles que l'auteur de la soumission, la date, la description de la balise, etc. Dans le développement réel, nous utilisons généralement des balises d'annotation. 🎜🎜Lors de l'utilisation de balises, nous devons prêter attention à un problème, à savoir comment nommer les balises. Lors de la dénomination des étiquettes, il est préférable d'utiliser une dénomination sémantique afin que les modifications apportées dans cette version puissent être exprimées de manière plus intuitive. Par exemple, nous pouvons utiliser des numéros de version sémantiques pour nommer les balises. 🎜🎜En bref, la stratégie Git est très importante pour le développement coopératif d'équipe. Elle peut nous aider à mieux gérer le code, à réduire les problèmes et les erreurs causés par l'expérience et les styles personnels des programmeurs, et peut également rendre les versions de code plus stables et maintenables. Par conséquent, lors du développement d’équipe, nous devons développer de bonnes habitudes de réglementation et de respect des politiques de Git. 🎜

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn