사실 이런 표현이 맞는지는 모르겠으나
우리가 생각했던 개념은
Nexus 에서 third party library를 관리하듯이
(build tool[maven, gradle 등]에서 repository 를 통해 local 저장소 보듯이)
npm에서 공통적으로 사용하는 node_modules 폴더를
레파지토리에 넣고 관리하고 싶었다.
며칠을 고민해봤으나...
각각의 문제점과 이것이 해결 방법인지 ? 상태로 종료되었다.
1. Nexus + npm repository 관리
- 이것을 수행하면 필요한 모든 것들이 SVN(형상관리) 처럼 될 줄 알았다...
그러나... 이것은 최종 만들어진(실행가능한) 파일들이 들어있는 xxxx.tgz 형태로 배포된다.
(node_modules 등은 중간단계에서 필요하고 최종은 필요 없다)
=> 즉, npm publish 했을 때 저장되는 저장소는 최종 실행 결과물에 대한 저장소 이다.
※ node_modules 관리 실패
2. svn 영역 추가
- deprecate 되는 js 들 때문에 이 문제에 들어온 거라
가장 쉽게 node_modules 폴더를 svn에 예외 설정 없이 하는 것이 가장 쉬었다.
3. 로컬 폴더를 지정하여 npm install 하기
- package.json 파일에 아래와 같이 경로를 추가하여 폴더내에 설치도 가능하다.
"dependencies": { "bar": "file:../foo/bar" }
관련 URL : stackoverflow.com/questions/14381898/local-dependency-in-package-json
사실 가장 쉬운 방법은
이 방법은 Offline 환경에 내부 네트워크 상에 효율적으로 관리하기 위한 방법이다.
SVN : 전체 소스 형상 관리(common_node)
Repository LIBRARY : 필요한 library jar 파일은 Nexus 3rd Party library로 관리
'Language' 카테고리의 다른 글
Inter-process communication (0) | 2014.03.27 |
---|---|
특정 문자열 분석 쉘 (0) | 2012.02.21 |
우리은행 웹 접근성 가이드 주소 (0) | 2011.08.09 |
빠른 수식 계산법 (0) | 2010.03.01 |