patch-package
서드파티 라이브러리를 커스텀한 상태가 배포상태에서도 지속되도록 관리해주는 패키지.
즉, node_modules에 수정한 사항이 git으로 관리되고 어떠한 실행 환경에서도 적용되도록 한다.
patch-package를 사용할 시 매번 버전이 달라질 때마다 patch 파일의 버전을 인스톨 되어 있는 버전과 맞춰줘야 하는 단점이 있다.
1. 설치
npm install —save-dev patch-package
2. 설정
// package.json
"scripts": {
"postinstall": "patch-package", // 해당 스크립트 추가
},
3. 변경하고자 하는 패키지 코드 수정
패키지 코드를 원하는대로 수정한다.
4. patch 적용
npx patch-package [변경한 패키지 이름]
5. “patches”라는 폴더가 생기고, 폴더 안에 변경한 패치 내용이 저장되어 있음을 확인
6. node_moduels 을 지웠다가 npm install 해보면 자동으로 패치내용들이 적용되어 있음
주의) 수정한 패키지의 patches 버전과 package.json의 패키지 버전이 다르면 에러를 유발하니 버전 체크하는 것이 중요!
반응형