Spring을 처음 활용하여 프로젝트를 생성해보게 되었다.
평소와 다름없이 깃허브에 프로젝트를 올리고자, git add . 를 실행했다.
그런데 ,, 두둥
warning: LF will be replaced by CRLF in 파일
The file will have its original line endings in your working directory
처음 보는 내용의 오류가 발생되며 명령어가 실행되지 않았다.
내용을 읽어보긴 했으나, LF와 CRLF를 알지 못해서 에러 메시지를 검색해보았다.
LF는 Line-Feed의 약자라고 한다. 커서는 그 자리에 둔 상태에서 종이만 한 줄 올리는 동작이다.
CRLF는 Carriage Return Line-Feed의 약자라고 한다. 커서를 다음 라인의 맨 앞으로 이동하는 동작이다.
이는 윈도우에서 발생하는 에러 메시지로, OS 마다 사용되는 줄바꿈 문자열이 달라 발생하는 오류라고 한다. 에러를 해결하지 않을 경우, 줄바꿈 문자에 의해 커밋 내역이나 설정 파일들이 이상해질 가능성이 있기 때문에 통일하는 것을 추천한다고 한다.
출처: https://velog.io/@realzu/Git-LF-will-be-replaced-by-CRLF-in-%EC%97%90%EB%9F%AC-%ED%95%B4%EA%B2%B0%EB%B2%95
core.autocrlf 설정으로 문제를 해결할 수 있었다.
LF와 CRLF를 서로 변환해주는 기능으로, 시스템 전체에 적용하고 싶다면 global 옵션을 추가해주면 된다.
1) 윈도우, DOS
$ git config core.autocrlf true
$ git config --global core.autocrlf true
2) 리눅스, Mac
$ git config core.autocrlf input
$ git config --global core.autocrlf input
나는 우선
$ git config core.autocrlf true
명령어를 사용해 문제를 해결했다.
문자열 줄바꿈이 달라서 오류가 발생할 수 있다는 점을 처음 알게 되었다.
찾아보지 않고 그냥 넘어갔다면 앞으로의 커밋이나 파일에 오류가 생길 수도 있었다고 생각하니 아찔하다.
LF와 CRLF에 대해서도 알게 되었다.
차분하게 강의를 보면서 따라하고 있는데, 냅다 내쪽에서 오류가 발생했다.
나 똑같이 따라하고 있었는데 도대체 왜 ..?
했는데, 다행히 강의에서도 동일한 오류가 발생했다.
불러오는 해당 메소드 위에 @ResponseBody 를 붙여주지 않았다..
Intellij 상에서 오류를 다시 읽어보면, 그런 템플릿이 존재하지 않거나,, 라는 내용의 문구가 떴다.
@ResponseBody는 그냥 데이터 반환하려고 하는 것이야~ 라는 것을 알려주는 명령어이다.
지금 작성하고 있는 코드의 경우는 html을 찾아 반환하려고 하는 것이 아니기 때문에 붙여주어야 한다.