Maison développement back-end Golang Certains historiques de commit git sont vraiment embarrassants, je recommande à tous les ingénieurs d'utiliser fréquemment git rebase et git commit --amend

Certains historiques de commit git sont vraiment embarrassants, je recommande à tous les ingénieurs d'utiliser fréquemment git rebase et git commit --amend

Dec 31, 2024 pm 07:40 PM

Dans la collaboration quotidienne en matière de programmation, la qualité des enregistrements de validation Git reflète souvent les connaissances en ingénierie d'un ingénieur. Cependant, je vois fréquemment des enregistrements de commit non standard qui sont assez embarrassants.

Par exemple :

Some git commit histories are really embarrassing, I recommend all engineers to frequently use git rebase and git commit --amend

Cela est probablement dû au fait d'avoir apporté des modifications après une validation et de réutiliser avec désinvolture la commande git commit précédente.

Bien que cela puisse être acceptable dans les référentiels personnels, ce n'est pas du tout professionnel dans les référentiels collaboratifs.

À mon avis, ces enregistrements de commit sont inutiles, représentent de mauvaises habitudes et peuvent être complètement évités.

Heureusement, Git nous propose une solution élégante. S'il n'est pas nécessaire de générer un nouveau commit, l'utilisation de git commit --amend peut éviter ce problème.

Some git commit histories are really embarrassing, I recommend all engineers to frequently use git rebase and git commit --amend

Utilisez moins de git merge et plus de git rebase

Par exemple :

1

Merge branch 'feature-A' of https://github.com/qiniu/reviewbot into feature-B

Copier après la connexion

Cela indique la fusion du code de la fonctionnalité A de la branche distante vers la fonctionnalité B. Ici, la fonctionnalité A est généralement la branche principale.

De tels messages de validation ne sont pas nécessaires dans vos relations publiques. Les messages de validation PR ne doivent contenir que des informations utiles sur les modifications en cours.

Personnellement, j'utilise rarement git merge, même pour synchroniser des branches distantes, j'utilise généralement git rebase.

Par exemple :

Some git commit histories are really embarrassing, I recommend all engineers to frequently use git rebase and git commit --amend

Outre les avantages ci-dessus, git rebase permet de maintenir un historique de validation très propre dans le référentiel principal. Par conséquent, je recommande fortement de l'utiliser.

Vérification du commit git de Reviewbot

Reviewbot est un projet open source de Qiniu Cloud, visant à fournir un service de révision de code auto-hébergé pour une révision/analyse statique pratique du code et la mise en œuvre de normes d'ingénierie personnalisées.

Pour mieux réguler ces deux comportements, Reviewbot a ajouté la fonctionnalité git commit check pour vérifier si les enregistrements git commit répondent aux normes.

S'ils ne respectent pas les normes, Reviewbot vous en informera :

Some git commit histories are really embarrassing, I recommend all engineers to frequently use git rebase and git commit --amend

Plus de pratiques et de conseils sur Git Flow

Bien sûr, il existe de nombreuses techniques pratiques dans les opérations git. J'encourage les personnes intéressées à les explorer. J'ai partagé du contenu connexe avec les étudiants lors du camp d'entraînement 1024 :

Super pratique ! Collaboration Git du point de vue d'un utilisateur, dites adieu à la mémorisation par cœur

Le document comprend des liens vidéo pour les lecteurs intéressés.

Enfin, en tant qu'ingénieurs professionnels, nous devons toujours rechercher l'excellence dans les pratiques d'ingénierie. De bons enregistrements de commit reflètent non seulement la qualité professionnelle personnelle, mais constituent également une pierre angulaire importante pour améliorer l’efficacité de la collaboration en équipe.

Grâce à une utilisation appropriée de git rebase et git commit --amend, nous pouvons maintenir un historique de soumission de code plus clair et plus professionnel. Cela facilite non seulement la révision du code, mais apporte également une grande commodité à la maintenance ultérieure du code et au suivi des problèmes.

Qu'en pensez-vous ?

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 de ce site Web
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

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

Video Face Swap

Video Face Swap

Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds

Tutoriel Java
1664
14
Tutoriel PHP
1266
29
Tutoriel C#
1239
24
Objectif de Golang: Construire des systèmes efficaces et évolutifs Objectif de Golang: Construire des systèmes efficaces et évolutifs Apr 09, 2025 pm 05:17 PM

GO Language fonctionne bien dans la construction de systèmes efficaces et évolutifs. Ses avantages incluent: 1. Haute performance: compilé en code machine, vitesse de course rapide; 2. Programmation simultanée: simplifier le multitâche via les goroutines et les canaux; 3. Simplicité: syntaxe concise, réduction des coûts d'apprentissage et de maintenance; 4. Plate-forme multipliée: prend en charge la compilation multiplateforme, déploiement facile.

Golang vs Python: performance et évolutivité Golang vs Python: performance et évolutivité Apr 19, 2025 am 12:18 AM

Golang est meilleur que Python en termes de performances et d'évolutivité. 1) Les caractéristiques de type compilation de Golang et le modèle de concurrence efficace le font bien fonctionner dans des scénarios de concurrence élevés. 2) Python, en tant que langue interprétée, s'exécute lentement, mais peut optimiser les performances via des outils tels que Cython.

Golang et C: concurrence vs vitesse brute Golang et C: concurrence vs vitesse brute Apr 21, 2025 am 12:16 AM

Golang est meilleur que C en concurrence, tandis que C est meilleur que Golang en vitesse brute. 1) Golang obtient une concurrence efficace par le goroutine et le canal, ce qui convient à la gestion d'un grand nombre de tâches simultanées. 2) C Grâce à l'optimisation du compilateur et à la bibliothèque standard, il offre des performances élevées près du matériel, adaptées aux applications qui nécessitent une optimisation extrême.

Impact de Golang: vitesse, efficacité et simplicité Impact de Golang: vitesse, efficacité et simplicité Apr 14, 2025 am 12:11 AM

GOIMIMPACTSDEVENCEMENTSPOSITIVEMENTS INSPECT, EFFICACTION ET APPLICATION.1) VITESSE: GOCOMPILESQUICKLYANDRUNSEFFIÉMENT, IDEALFORLARGEPROROSTS.2) Efficacité: ITSCOMPEHENSIVESTANDARDLIBRARYREDUCEEXTERNEDENDENCES, EnhancingDevelovefficiency.3) Simplicité: Simplicité: Implicité de la manière

Golang vs Python: différences et similitudes clés Golang vs Python: différences et similitudes clés Apr 17, 2025 am 12:15 AM

Golang et Python ont chacun leurs propres avantages: Golang convient aux performances élevées et à la programmation simultanée, tandis que Python convient à la science des données et au développement Web. Golang est connu pour son modèle de concurrence et ses performances efficaces, tandis que Python est connu pour sa syntaxe concise et son écosystème de bibliothèque riche.

Golang et C: les compromis en performance Golang et C: les compromis en performance Apr 17, 2025 am 12:18 AM

Les différences de performance entre Golang et C se reflètent principalement dans la gestion de la mémoire, l'optimisation de la compilation et l'efficacité du temps d'exécution. 1) Le mécanisme de collecte des ordures de Golang est pratique mais peut affecter les performances, 2) la gestion manuelle de C et l'optimisation du compilateur sont plus efficaces dans l'informatique récursive.

La course de performance: Golang vs C La course de performance: Golang vs C Apr 16, 2025 am 12:07 AM

Golang et C ont chacun leurs propres avantages dans les compétitions de performance: 1) Golang convient à une concurrence élevée et à un développement rapide, et 2) C fournit des performances plus élevées et un contrôle fin. La sélection doit être basée sur les exigences du projet et la pile de technologie d'équipe.

Golang vs C: Performance et comparaison de la vitesse Golang vs C: Performance et comparaison de la vitesse Apr 21, 2025 am 12:13 AM

Golang convient au développement rapide et aux scénarios simultanés, et C convient aux scénarios où des performances extrêmes et un contrôle de bas niveau sont nécessaires. 1) Golang améliore les performances grâce à des mécanismes de collecte et de concurrence des ordures, et convient au développement de services Web à haute concurrence. 2) C réalise les performances ultimes grâce à la gestion manuelle de la mémoire et à l'optimisation du compilateur, et convient au développement du système intégré.

See all articles