CR, LF에 대한 이해

최준석·2022년 12월 18일
0

Today I Learned

목록 보기
3/4

프로젝트를 하면서 GitBash를 사용하는데, Commit을 할때 CRLF 관련된 메시지를 종종 봤습니다.
그래서 이게 뭔지 찾아보았고, 간단하게 정리해보고자 합니다.

CR, LF 란?

CR, LF는 컴퓨터 대신 타자기를 사용하던 시절에 사용하던 줄 바꿈 방식에 대한 용어입니다.

타자기를 쓰던 시절에 줄 바꿈을 하려면 커서를 왼쪽으로 밀어주는 Carraige Return(CR)과 한 줄 아래로 내리는 Line Feed(LF) 두 가지 과정을 거쳤는데 이를 합쳐서 CRLF라고 했고, 컴퓨터를 사용하는 시기에 들어와서도 같은 용어를 계속 사용했습니다.

다만, 컴퓨터에서 줄 바꿈을 할 때에는 CR과 LF 두가지 과정을 굳이 거칠 필요가 없으므로 단순히 줄바꿈을 의미하는 용어로 변했고, 의미전달만 하면 되므로 메모리 절약을 위해 CR이나 LF 하나만 사용하기도 합니다.

Window의 경우에는 CRLF(\r\n)을 기본으로 사용하고 있으며, Unix/Linux에서는 LF(\n)만으로 줄 바꿈을 하고 있습니다. 이 때문에 줄바꿈을 CRLF로만 인식하는 Window에서 Unix기반 OS로 작성된 파일을 열었을때 줄바꿈이 적용되지 않고 글자가 깨져보이는 현상이 생기는 경우가 있고, 따라서 협업을 할 때 줄바꿈을 CRLF, LF 둘 중 어떤방식을 적용할지 합의하는 게 좋습니다.

LF는 아스키코드 10번이고 CR은 아스키코드 13번입니다.

profile
Back-End Web Developer

0개의 댓글