Site perso d'un administrateur systèmes & réseaux

Catégorie : Git

Forcer Git à écraser les fichiers locaux pour se resynchroniser avec un dépôt distant

Pour plusieurs raisons, vous pouvez souhaiter que votre dépôt local soit exactement le même que le dépôt distant (c’est-à-dire, la version officielle sur GitHub ou Gitlab). Pour ce faire, vous pouvez réinitialiser votre dépôt local pour qu’il corresponde à l’état du dépôt distant.

Voici les étapes à suivre :

Sauvegardez vos modifications locales : Avant de réinitialiser votre dépôt, assurez-vous de sauvegarder toutes les modifications locales que vous souhaitez conserver, car la réinitialisation peut entraîner la perte de modifications non commitées

Fetch les dernières modifications : Récupérez les dernières informations de votre dépôt distant sans modifier votre répertoire de travail.

git fetch origin

Ici, origin est le nom par défaut du dépôt distant. Si votre dépôt distant a un nom différent, remplacez origin par le nom approprié.

Réinitialiser votre branche : Réinitialisez votre branche actuelle (par exemple, main ou master) pour qu’elle corresponde à la branche distante.

git reset --hard origin/main

Remplacez main par le nom de la branche que vous souhaitez réinitialiser si elle est différente.

Nettoyer les fichiers non suivis : Si vous avez des fichiers non suivis dans votre répertoire de travail que vous souhaitez supprimer, utilisez la commande git clean.

git clean -fd

Cette commande supprimera les fichiers et dossiers non suivis. Soyez prudent avec cette commande, car elle supprime définitivement ces fichiers.

Vérifiez l’état de votre dépôt : Après ces opérations, votre dépôt local devrait être synchronisé avec le dépôt distant.

git status

Cette procédure garantit que votre dépôt local est une copie exacte du dépôt distant, en termes de contenu de fichiers et d’historique de commit.

Toutes les modifications locales non commitées seront perdues. Assurez-vous donc de bien comprendre les implications avant de procéder !

Comment résoudre l’erreur « Filename too long » dans Git ?

L’erreur « Filename too long » dans Git est souvent rencontrée sur les systèmes Windows, car ils ont une limite de longueur de chemin de fichier (par défaut, 260 caractères).

Git a une configuration pour contourner cette limitation. Voici comment vous pouvez résoudre ce problème :

Activer le mode long path dans Git : Vous pouvez dire à Git d’autoriser des chemins de fichiers plus longs en modifiant sa configuration.

Ouvrez votre terminal ou invite de commande en mode administrateur, et exécutez la commande suivante :

git config --system core.longpaths true

Cette commande permet à Git de gérer des chemins de fichiers plus longs que la limite par défaut de Windows.

Vérifier la configuration de Windows : Sur les versions plus récentes de Windows 10, il est également possible d’activer le support des chemins longs au niveau du système d’exploitation. Pour cela, vous devez modifier le registre ou la politique de groupe :

  • Modification du registre : Ouvrez l’éditeur de registre (regedit), et naviguez vers HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem. Modifiez la valeur de LongPathsEnabled de 0 à 1.
  • Politique de groupe : Si vous utilisez une édition de Windows qui prend en charge l’éditeur de stratégie de groupe local, tapez gpedit.msc dans le menu Démarrer, naviguez jusqu’à Configuration ordinateur > Modèles d'administration > Système > Système de fichiers, et activez Activer les chemins d'accès longs de Win32.

Redémarrer votre système : Après avoir effectué ces modifications, redémarrez votre système pour que les changements prennent effet.

Réessayer l’opération Git : Après le redémarrage, essayez à nouveau l’opération Git qui a échoué précédemment.

Ces étapes devraient résoudre le problème des chemins de fichiers trop longs sous Windows lors de l’utilisation de Git.

Fièrement propulsé par WordPress & Thème par Anders Norén