Accueil/ Blog/ Nouveautés Git 2024 : 10 commandes essentielles pour développeurs

Nouveautés Git 2024 : 10 commandes essentielles pour développeurs

Découvrez 10 commandes Git essentielles, souvent méconnues, pour optimiser votre gestion de version et booster votre productivité en 2024.

Nouveautés Git 2024 : 10 commandes essentielles pour développeurs

Si vous travaillez avec Git depuis un moment, vous avez probablement rencontré des difficultés courantes : lenteur des opérations sur des dépôts volumineux, écrasement accidentel de modifications ou gestion laborieuse des monorepos.

Heureusement, Git évolue constamment pour améliorer notre quotidien. Dans cet article, nous explorons 10 commandes Git récentes et sous-utilisées qui simplifieront votre workflow et boosteront votre productivité. Prêts à passer au niveau supérieur ?

1. git switch : Changez de branche plus facilement

Avant Git 2.23, la commande git checkout servait à tout : changer de branche, restaurer des fichiers, ou accéder à un commit spécifique. Cela pouvait être confus et risqué.

Avec git switch, introduit en Git 2.23, les opérations sont désormais claires et sécurisées :

# Passer à une autre branche
git switch feature-branch

# Créer et passer à une nouvelle branche
git switch -c nouvelle-branche

Fini les confusions et les risques d'écrasement accidentel de vos fichiers !

2. git restore : Annulez des modifications en toute sécurité

Auparavant, annuler des modifications impliquait des commandes comme git checkout ou git reset, souvent source d’erreurs.

Introduit avec Git 2.23, git restore permet de revenir en arrière sans risque :

# Annuler les modifications dans le répertoire de travail
git restore main.js

# Retirer les modifications de l'index (staging)
git restore --staged main.js

Une méthode simple et sans danger pour les développeurs.

3. git maintenance : Automatisation de l'entretien des dépôts

Les gros dépôts peuvent ralentir vos opérations (git fetch, git status) et s'encombrer de données inutiles. Depuis Git 2.29, git maintenance automatise les tâches d'optimisation :

# Activer la maintenance automatique
git maintenance start

# Exécuter manuellement des tâches d'optimisation
git maintenance run

Avantages :

  • Garbage collection pour supprimer les objets inutiles.
  • Compression des fichiers (repacking) pour économiser de l’espace.
  • Mises à jour de l’historique des commits pour accélérer git log.

4. git sparse-checkout : Gérer efficacement les gros monorepos

Cloner tout un monorepo pour n’utiliser qu’un sous-dossier ? Inefficace. Grâce à git sparse-checkout (Git 2.25), vous pouvez sélectionner les parties à récupérer :

# Initialiser le mode sparse-checkout
git sparse-checkout init

# Inclure uniquement certains dossiers
git sparse-checkout set src/ docs/

Cette commande réduit le temps de clonage et économise de l'espace disque.

5. git log --remerge-diff : Comprendre les commits de fusion

Lors d’une fusion complexe, git log n'affiche souvent que les branches fusionnées. Avec --remerge-diff (Git 2.35), vous pouvez visualiser précisément les changements :

git log --remerge-diff

Utile pour déboguer des conflits ou auditer un historique de fusion.

6. git blame --ignore-rev : Ignorez les commits de formatage

Un commit de formatage peut rendre git blame inutile. Depuis Git 2.23, utilisez --ignore-rev pour ignorer ces commits :

git blame --ignore-rev commit-hash

Pour une solution durable :

# Ajouter le commit à un fichier d'ignore
echo commit-hash >> .git-blame-ignore-revs

# Configurer Git pour utiliser ce fichier
git config blame.ignoreRevsFile .git-blame-ignore-revs

7. git range-diff : Comparez des plages de commits

Après un rebase ou des modifications importantes, git range-diff compare deux séries de commits pour identifier les changements :

git range-diff old..new

Parfait pour valider les ajustements après un historique réécrit.

8. git worktree : Travaillez sur plusieurs branches simultanément

Besoin de travailler sur plusieurs branches sans changer de répertoire ? Utilisez git worktree :

# Créer un nouveau répertoire de travail pour une branche
git worktree add ../feature-branch feature-branch

# Supprimer le répertoire temporaire
git worktree remove ../feature-branch

9. git rebase --update-refs : Gardez les références synchronisées

Lors d’un rebase, les branches ou tags peuvent pointer vers des commits obsolètes. Avec --update-refs (Git 2.38), Git met à jour automatiquement ces références :

git rebase --update-refs

10. git commit --fixup et git rebase --autosquash : Corrigez des commits proprement

Pour corriger un ancien commit sans encombrer l'historique, combinez --fixup et --autosquash :

# Créer un commit de correction
git commit --fixup commit-hash

# Squasher automatiquement le fixup
git rebase -i --autosquash HEAD~3

Une méthode idéale pour un historique propre avant la fusion.

Conclusion

Ces 10 commandes Git offrent des solutions concrètes aux problèmes rencontrés par les développeurs : simplification des workflows, optimisation des performances, et sécurité accrue dans la gestion des branches.

Pourquoi choisir Tunisie Innovation pour vos projets ?

Chez Tunisie Innovation, nous vous accompagnons dans l'optimisation de vos outils et méthodes de développement. Nos équipes maîtrisent les dernières pratiques Git pour vous offrir des solutions efficaces et adaptées à vos besoins professionnels.

Prêts à transformer vos workflows ? Contactez-nous dès aujourd’hui et bénéficiez de l’expertise d’une agence digitale dédiée à l’innovation.

Besoin d'aide sur ce sujet ?

Nos experts vous conseillent gratuitement et vous proposent une solution adaptée à votre entreprise.

Demander un devis gratuit
FAQ

Questions fréquentes

Pourquoi utiliser git switch plutôt que git checkout pour changer de branche ?
git checkout servait à la fois à changer de branche, restaurer des fichiers ou accéder à un commit, ce qui prêtait à confusion. Introduit avec Git 2.23, git switch est dédié aux branches : git switch -c crée une branche et y bascule, avec moins de risque d'écraser des fichiers.
Comment annuler des modifications en toute sécurité avec git restore ?
git restore, apparu avec Git 2.23, remplace des usages risqués de checkout ou reset. git restore fichier annule les modifications du répertoire de travail, tandis que git restore --staged fichier retire le fichier de l'index sans perdre son contenu.
À quoi sert la commande git maintenance ?
Disponible depuis Git 2.29, git maintenance automatise l'entretien des dépôts volumineux : nettoyage des objets inutiles, recompression des fichiers et mise à jour de l'historique pour accélérer des commandes comme git log. git maintenance start active ces tâches en arrière-plan.
Comment travailler sur une partie seulement d'un monorepo avec Git ?
git sparse-checkout, introduit avec Git 2.25, permet de ne récupérer que certains dossiers. Après git sparse-checkout init, la commande git sparse-checkout set src/ docs/ limite les fichiers présents localement, ce qui accélère le travail sur les gros dépôts.
Contact

Contactez-nous

Prêt à donner vie à votre projet ? Contactez-nous dès aujourd'hui et commençons à créer ensemble des solutions innovantes pour votre entreprise.

Votre projet
Service concerné (facultatif)

Besoin, délais, budget approximatif : plus c'est précis, plus notre réponse le sera.

Vos coordonnées
  • Réponse sous 24 h ouvrées
  • Devis gratuit, sans engagement

Tous les champs sont obligatoires sauf mention contraire. Protégé par reCAPTCHA ; vos données servent uniquement à vous répondre.