git pull avorté avec un nom d’erreur trop long

J’utilise Windows comme système d’exploitation et je travaille sur un projet avec un ami qui utilise un Mac. Il a vérifié le code de notre Github.

J’essayais de tirer tout ce qu’il faisait et il a avorté avec des erreurs “nom de fichier trop long” du code tiers.

Que puis-je faire?

La FAQ msysgit sur Git ne peut pas créer un répertoire avec un long chemin qui ne semble pas à jour, car il rest lié à l’ancien ticket msysgit # 110 . Cependant, selon le dernier ticket # 122, le problème a été corrigé dans msysgit 1.9:

  1. Mise à jour vers msysgit 1.9 (ou version ultérieure)
  2. Lancer Git Bash
  3. Vous êtes dans votre repository Git qui souffre de problèmes de chemins longs
  4. Activer la prise en charge des chemins longs avec git config core.longpaths true

Jusqu’à présent, cela a très bien fonctionné pour moi.

Soyez conscient des remarques importantes dans les commentaires sur le ticket # 122

ne revenez pas ici et ne vous plaignez pas que cela brise Windows Explorer, cmd.exe, bash ou tout autre outil que vous utilisez.

Solution1 – Définissez la configuration globale en exécutant cette commande:

 git config --system core.longpaths true 

Solution2 – ou vous pouvez modifier directement votre fichier de configuration git spécifique comme ci-dessous:

YourRepoFolder -> .git -> config:

 [core] repositoryformatversion = 0 filemode = false ... longpaths = true <-- (add this line under core section) 

Solution3 - lors du clonage d'un nouveau référentiel: ici .

Quelques années de retard, mais j’aimerais append que si vous devez le faire d’un seul coup (comme je l’ai fait), vous pouvez définir les parameters de configuration pendant la commande clone. Essaye ça:

git clone -c core.longpaths=true

Ouvrez votre fichier.gitconfig pour append la propriété longpaths. Donc, cela ressemblera à ceci:

 [core] symlinks = false autocrlf = true longpaths = true 

En tant que personne ayant constamment rencontré ce problème avec des référentiels Java sur Windows, la meilleure solution consiste à installer Cygwin ( https://www.cygwin.com/ ) et à utiliser son installation git sous tous> dével> git.

La raison pour laquelle c’est la meilleure solution que j’ai trouvée est que Cygwin gère les noms de chemin d’access long pour que d’autres commandes soient utiles. Ex: find, cp et rm. Croyez-moi, le vrai problème commence lorsque vous devez supprimer des noms de chemin trop longs dans Windows.

Essayez de garder vos fichiers plus proches de la racine du système de fichiers. Plus de détails: pour des raisons techniques, Git for Windows ne peut pas créer de fichiers ou de répertoires lorsque le chemin absolu dépasse 260 caractères .