LF vs CRLF

LF vs CRLF

Category
Published
May 14, 2023
Last updated
Last updated September 7, 2024
Tags
LF와 CRLF 중 어떤 것을 사용해야 할까요? 결론부터 말하자면, LF를 사용하는 것이 좋습니다

LF, CRLF

LF와 CRLF에 대해 알아보게 된 계기는 이전에 git을 사용하여 협업을 진행할 때 CRLF와 LF로 인해 코드 충돌이 일어났었을때 찾아보게 되었습니다. CR은 캐리지 리턴(Carriage Return)을 의미하며, LF는 라인 피드(Line Feed)를 의미합니다. 보통 우리가 '\n'으로 표시하여 문자열 출력 시 줄바꿈을 표현하는 것이 바로 LF입니다. 또한, CR은 '\r'로 커서를 맨 앞으로 이동시키는 역할을 합니다.
그렇다면 LF와 CRLF의 차이는 무엇일까요? 두 개는 모두 줄바꿈을 표현하는 것을 의미합니다. 그러나 운영 체제에 따라 줄바꿈을 나타내는 표준이 다릅니다.
  • LF: Linux, macOS에서 사용
  • CRLF: Windows에서 사용
이러한 표준의 차이는 과거의 타자기 시대로 거슬러 올라가야 이해할 수 있습니다. 타자기를 사용할 때는 줄을 바꾸는 LF를 입력한 후 커서를 맨 앞으로 이동시키는 CR까지 해주어야 했습니다. 그러나 현대에는 LF만으로도 줄바꿈을 표현할 수 있게 되었습니다. 이러한 차이로 인해 윈도우와 다른 운영 체제에서 줄바꿈의 표현 방식이 다르게 되었습니다. 이는 대부분의 경우에는 큰 문제가 되지 않지만, 협업 시 스타일의 차이로 인해 문제가 발생할 수 있습니다. 대부분 간단하게 변경할 수 있으므로 코드 작성 시 LF로 통일하는 것이 좋습니다.