[TIL] 6/27 :: tsc 권한문제 / CRLF error

yeseul·2024년 6월 27일

<TIL>

목록 보기
28/43

* tsc 권한문제

  • npm 통해 typescript 설치 후 tsc 실행을 하니 이런 오류가 발생했다.
    ❗해당 커맨드에 대한 접근 권한이 부여되지 않은 경우이다.
  1. windows PowerShell 프로그램을 관리자 권한으로 실행

  2. Get-ExecutionPolicy 명령어를 작성하면 본인의 권한 상태가 보여진다.
    (보통 위와 같은 문제가 발생한다면 "Restricted" 로 나온다. 나도 위의 코드를 보면 Restricted 로 나온것을 볼 수 있다.)

  3. 권한이 RemoteSigned 가 아니라면 Set-ExecutionPolicy RemoteSigned 를 입력

  4. Get-ExecutionPolicy 명령어로 다시 한번 확인 하면 "RemoteSigned"로 변경 확인.

    이를 다시 Restricted로 바꿀 경우, 마찬가지로 tsc 명령이 먹히지 않는다.
    RemoteSigned로 바뀐 이후에는 실행이 잘 됐다-!

    * LF will be replaced by CRLF in

warning: LF will be replaced by CRLF in (파일경로)
The file will have its original line endings in your working directory

  • 그동안 엄청 자주 본 에러메세지이고 그때마다 검색했는데 이참에 정리해두려고 한다.

✔️ LF 란?

: Line-Feed 의 약자이다.

✔️ CRLF 란?

: Carriage Return Line-Feed 의 약자이다.
여기서 Carriage Return이란 문장이 끝에 다다르면 커서는 위아래 이동 없이 가장 앞으로 이동하는 동작을 말한다.
즉, CRLF는 커서를 다음 라인의 맨 앞으로 이동하는 동작이다.

❗에러 발생 이유

: OS마다 사용되는 줄바꿈 문자열이 다르기 때문에 git에서 어떤 의미로 받아들여야 할지 몰라 에러 메시지가 나타난 것이다.

💡core.autocrlf 설정하기

core.autocrlf 설정을 통해 해결할 수 있다.
Git에 코드를 커밋할 때 LF와 CRLF를 서로 변환해주는 기능이다.
또한 시스템 전체에 적용할 것이라면 global 옵션을 추가해주고, 해당 프로젝트에만 적용한다면 제외하여 작성해주면 된다.

각각의 체제에 맞게 아래의 명령어를 선택하여 입력해준다.

  • Windows, DOS 명령어
$git config core.autocrlf true
$git config --global core.autocrlf true

global 추가 유무에 따라서 둘 중에 하나를 선택해 입력한다.

  • Linux, Mac 명령어
$git config core.autocrlf input
$git config --global core.autocrlf input
  • 기능 해제
$git config --global core.autocrlf false

0개의 댓글