Git - LF Will Be Replaced by CRLF

Ashok Chapagai 24 décembre 2021
Git - LF Will Be Replaced by CRLF

LF signifie Line Feed qui est un moyen de représenter la fin d’une ligne dans les systèmes basés sur UNIX. Mais dans un système basé sur Windows, une ligne est généralement exprimée par CR (Carriage Return) et un saut de ligne (LF).

Ce problème survient si vous utilisez un système basé sur UNIX (macOS) pour pousser le code, le code aura une fin LF.

Si vous utilisez une machine Windows, apportez des modifications au code et effectuez un commit, il sera remplacé par CRLF car git est intelligent et ne s’attend pas à ce que vous utilisiez LF sur le système d’exploitation Windows.

De même, l’inverse se produit si l’avertissement dit LF Will Be Replaced by CRLF. Vous perdrez le CRLF basé sur Windows après validation/extraction, et LF le remplacera.

Correction de l’avertissement LF Will Be Replaced by CRLF dans Git

Une façon de corriger l’avertissement consiste à apporter des modifications aux fichiers de configuration situés dans le chemin où git est installé. La valeur de code.autocrlf est stockée dans le fichier gitconfig situé dans %ProgramFiles(x86)%\git\etc\gitconfig ou ProgramFiles\git\etc\gitconfig et dans /etc/gitconfig dans Systèmes d’exploitation basés sur Linux/Unix.

Cependant, nous pouvons résoudre le problème dans différentes situations :

Si vous souhaitez utiliser le projet sur un système d’exploitation basé sur Unix, vous devez définir la valeur de core.autocrlf sur true.

Si vous souhaitez utiliser le projet sous Windows uniquement, le flag doit être mis à false.

Cependant, dans le système d’exploitation basé sur Unix, vous pouvez désactiver le core.autocrlf selon nos besoins.

Avant d’effectuer des modifications, vous pouvez vérifier les paramètres actuels en utilisant la commande suivante,

git config core.autocrlf

La commande donnera en sortie true ou false ou input, et vous pouvez apporter des modifications en fonction de vos besoins.

Correction de l’avertissement LF Will Be Replaced by CRLF sur l’ensemble du système

Pour résoudre le problème à l’échelle du système, vous pouvez utiliser,

git config --system core.autocrlf false

Correction de l’avertissement LF Will Be Replaced by CRLF par utilisateur

Pour résoudre le problème selon l’utilisateur, vous pouvez utiliser,

git config --global core.autocrlf false

Correction de l’avertissement LF Will Be Replaced by CRLF sur le projet uniquement

Pour résoudre le problème pour un projet particulier,

git config --local core.autocrlf false
Ashok Chapagai avatar Ashok Chapagai avatar

Ashok is an avid learner and senior software engineer with a keen interest in cyber security. He loves articulating his experience with words to wider audience.

LinkedIn GitHub