package.json에서 git URL을 사용하는 분기 또는 태그에 의존합니까?
버그 수정이있는 노드 모듈을 포크하고 버그 수정이 병합 및 릴리스 될 때까지 기능 분기에서 고정 버전을 사용하고 싶다고 가정 해 보겠습니다.
어떻게 내 고정 된 버전을 참조하는 것이 dependencies
내의 package.json
?
로부터 NPM 워드 프로세서 :
git://github.com/<user>/<project>.git#<branch>
git://github.com/<user>/<project>.git#feature\/<branch>
NPM 버전 1.1.65부터 다음을 수행 할 수 있습니다.
<user>/<project>#<branch>
@dantheta의 의견에 따라 :
npm 1.1.65부터 Github URL은 더 간결한 사용자 / 프로젝트가 될 수 있습니다. npmjs.org/doc/files/package.json.html user / project # branch와 같이 브랜치를 연결할 수 있습니다
그래서
"babel-eslint": "babel/babel-eslint",
또는 jscs의 태그 v1.12.0의 경우 :
"jscs": "jscs-dev/node-jscs#v1.12.0",
npm --save를 사용하면 더 긴 자식을 얻을 수 있습니다.
에서 https://docs.npmjs.com/files/package.json#git-urls-as-dependencies
의존성으로서 Git URL
힘내 URL은 다음과 같은 형식 일 수 있습니다.
git : //github.com/user/project.git#commit-ish git + ssh : // user @ hostname : project.git # commit-ish git + ssh : //user@hostname/project.git#commit- ish git + http : //user@hostname/project/blah.git#commit-ish git + https : //user@hostname/project/blah.git#commit-ish
commit-ish는 git checkout의 인수로 제공 할 수있는 모든 태그, sha 또는 분기 일 수 있습니다. 디폴트는 master입니다.
GitHub URL
버전 1.1.65부터는 GitHub URL을 "foo": "user / foo-project"로 나타낼 수 있습니다. 자식 URL과 마찬가지로 커밋-쉬미 접미사를 포함 할 수 있습니다. 예를 들면 다음과 같습니다.
{ "name": "foo",
"version": "0.0.0",
"dependencies": { "express": "visionmedia / express", "mocha": "visionmedia / mocha # 4727d357ea"}}
사용 devel
또는 feature
분기를 원하거나 NPM 레지스트리에 특정 패키지를 게시하지 않았거나 개인 모듈이기 때문에 패키지를 게시 할 수없는 경우 : git://
에서 버전 번호 대신 URI를 가리킬 수 있습니다 package.json
.
"dependencies": {
"public": "git://github.com/user/repo.git#ref",
"private": "git+ssh://git@github.com:user/repo.git#ref"
}
이 #ref
부분은 선택 사항이며 분기 (예 master
:), 태그 (예 0.0.1
:) 또는 부분 또는 전체 커밋 ID 일 수 있습니다.
최신 버전의 NPM에서는 다음을 수행 할 수 있습니다.
npm install gitAuthor/gitRepo#tag
리포지토리가 유효한 NPM 패키지 인 경우 package.json에서 다음과 같이 자동 별칭이 지정됩니다.
{ "NPMPackageName": "gitAuthor/gitRepo#tag" }
이것을 @justingordon의 답변에 추가 할 수 있다면 지금은 수동 앨리어싱이 필요하지 않습니다!
'Programming' 카테고리의 다른 글
__getattr__과 __getattribute__의 차이점 (0) | 2020.02.27 |
---|---|
크롬에서 기본 인증 세부 정보를 지우는 방법 (0) | 2020.02.27 |
파이썬 객체가 문자열인지 확인하는 방법? (0) | 2020.02.26 |
appcompat-v7 : 21.0.0 ': 주어진 이름과 일치하는 리소스를 찾을 수 없습니다 : attr'android : actionModeShareDrawable ' (0) | 2020.02.26 |
C ++에서 대소 문자를 구분하지 않는 문자열 비교 (0) | 2020.02.26 |