패키지 매니저로 yarn을 쓰고 있는데, 실수로 npm으로 설치한 라이브러리가 섞였다. ( yarn으로 하든 npm으로 하든 서로 호환은 되지만 충돌이 생길 가능성이 있어 한 가지 패키지 매니저만 사용하는 게 보통임)
그 후로 pull을 받을 때 종종 yarn.lock 에러가 떠서 처음에는 dev에 있는 yarn.lock을 복사해서 해결했다가 자꾸 떠서 근본부터 해결하기로 했다.
yarn cache clear
로 캐시 데이터 삭제yarn install
(package.json 파일이 멀쩡하다는 전제 하에 yarn.lock과 node_modules를 지워도 yarn install을 하면 알아서 다 생김)이렇게 한 뒤에 브랜치에 푸시하고 팀원들이 모두 받아서 같은 과정을 밟았다. 이제 싱크가 완전히 맞추진 상황. 그리고 컴퓨터나 인터넷이 느린 경우에는 초기화하고 yarn install을 하면 ESOCKET_TIMEOUT이 뜰 수 있다. 만약 이게 뜬다면, yarn install --network-timeout 1000000
로 타임아웃 대기 시간을 늘려서 다시 시도하면 보통은 해결이 된다. (tiemout 뒤에 오는 숫자는 ms 단위)
맥을 쓰는 경우에는 package.json 파일 안 script에 아래 커맨드를 추가해주고 사용하면 위 단계를 한 큐에 진행할 수 있어서 편리하다.
"clean": "rm -rf ./node_modules && rm -f yarn.lock && yarn cache clean && yarn install"