모듈로 인한 커밋 에러 해결(husky, eslint, node 등..)

jellyjw·2023년 1월 10일
1

husky 디렉토리 안의 pre-commit 파일 때문인지 자꾸 커밋오류가 났다.

//husky > pre-commit

#!/usr/bin/env sh
. "$(dirname -- "$0")/_/husky.sh"

npm lint-staged


터미널에 npm lint-staged 를 입력해보면
Running tasks for staged files...
eslint --fix
이런 에러가 자꾸 났다. 스택오버플로우에 npm을 yarn으로 바꿔보라는 말이 있어서 바꾸고 yarn을 설치해준 뒤 다시 명령어를 입력해 봤다.

#!/usr/bin/env sh
. "$(dirname -- "$0")/_/husky.sh"

yarn lint-staged

lint-staged 모듈을 찾을수 없다는데 yarn add 를 입력해봐도 더이상 설치할 패키지가 없다는 말 뿐..
node_modules 를 삭제하고 다시 yarn install 을 하려는데

node 버전 문제가 발생..
node18.12.0 버전으로 업시키고 다시 실행했다.


그래도 많이 왔다. 적어도 not found 에러에서는 벗어났기 때문이다.
eslint --fix가 husky 의 검사에서 통과되지 못해 발생하는 에러라는것을 알아냈다.

//eslintrc.js
	settings: {
		next: {
			rootDir: "apps/nextjs-app",
		},
	},

경로가 달라서 나타나는 문제인 듯 싶어 eslintrc.js 파일에 추가해줬는데, 또 에러가 났다.

내 경로에 packages 폴더는 없었는데 경로상 packages 폴더가 추가되어 있길래 혹시나 해서 루트폴더에 packages 빈 폴더를 추가해줬더니 에러가 해결됐다..!!!!!!

긴 싸움 끝에 연두색 체크 표시를 얻어내고, 커밋에 성공하였으나
push 에서 에러 또 발생^^


이건 자주 보던 에러다.
failed to push some refs to ...
구면이지 우리? 깃 처음 쓸 때 가장 많이 접했던 에러이다.

브랜치명 앞에 +를 붙여주면 해결이 된다고 해서 붙였더니 push에 성공했다. forced update !


모듈로 인한 오류 해결이라고 적어놨지만, 사실은 정말 밤 잠 줄여가며 새벽까지 만든 작업물들이 reset 명령어 하나로 다 날아가버리는 대참사를 겪고나서 겨우겨우겨우겨우 복구에 성공하고 겪은 에러였다.

이 이틀동안 내 수명이 10년은 단축되는 것 같았다. 정말. 파일 삭제 됐을땐 눈물 찔끔 흘렸다.
결론 : reset 명령어는 조심해서 쓰고, 커밋 제때제때 하고, 오류메세지를 잘 읽어보자(제일 중요) !

profile
남는건 기록뿐👩🏻‍💻

0개의 댓글