다른 개인 github 리포지토리를 종속성으로 포함하는 npm으로 github 개인 리포지토리를 설치하려고합니다.
많은 방법과 게시물을 시도했지만 아무것도 작동하지 않습니다. 내가하고있는 일은 다음과 같습니다.
npm install git+https://github.com/myusername/mygitrepository.git
package.json의 내용은 다음과 같습니다.
"dependencies": {
"repository1name": "git+https://github.com/myusername/repository1.git",
"repository2name": "git+https://github.com/myusername/repository2.git"
}
올바른 방법은 무엇입니까?
답변
이 시도:
"dependencies" : {
"name1" : "git://github.com/user/project.git#commit-ish",
"name2" : "git://github.com/user/project.git#commit-ish"
}
visionmedia / express가 name / repo 인 경우에도 시도 할 수 있습니다.
"dependencies" : {
"express" : "visionmedia/express"
}
또는 (npm 패키지 모듈이있는 경우) :
"dependencies" : {
"name": "*"
}
NPM 문서 에서 가져온
답변
다음은 내가 필요한 모든 시나리오에서 잘 작동했습니다.
"dependencies": {
"GitRepo": "git+https://<token-from-github>:x-oauth-basic@github.com/<user>/<GitRepo>.git"
}
답변
공개 디렉토리를 위해 여기에 온 사람들을 위해, npm 문서에서 : 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입니다.
답변
수락 된 답변은 효과가 있지만 안전한 토큰을 붙여 넣는 아이디어는별로 좋지 않습니다. package.json
다른 곳에서 찾았습니다 .git-config 맨 페이지에 설명 된 대로이 일회성 명령 을 실행하십시오 .
git config --global url."https://${GITHUB_TOKEN}@github.com/".insteadOf git@github.com:
GITHUB_TOKEN
environmnet 변수로 설정되거나 직접 붙여 넣기 가능
그런 다음 개인 github repos를 다음과 같이 설치합니다. npm install user/repo --save
Heroku에서도 작동합니다. 위의 git config ...
명령을 heroku-prebuild
스크립트로 package.json
설정 GITHUB_TOKEN
하고 Heroku 구성 변수로 설정하십시오.
답변
사람들이 지적한대로 여러 가지 방법이 있지만 가장 짧은 버전은 다음과 같습니다.
// from master
"depName": "user/repo",
// specific branch
"depName": "user/repo#branch",
// specific commit
"depName": "user/repo#commit",
// private repo
"depName": "git+https://[TOKEN]:x-oauth-basic@github.com/user/repo.git"
예 :
"dependencies" : {
"hexo-renderer-marked": "amejiarosario/dsa.jsd#book",
"hexo-renderer-marked": "amejiarosario/dsa.js#8ea61ce",
"hexo-renderer-marked": "amejiarosario/dsa.js",
}
답변
"dependencies": {
"some-package": "github:github_username/some-package"
}
아니면 그냥
"dependencies": {
"some-package": "github_username/some-package"
}
답변
Git curl
이 후드 아래에서 사용하기 때문에 ~/.netrc
자격 증명과 함께 파일을 사용할 수 있습니다 . GitHub의 경우 다음과 같이 보일 것입니다.
machine github.com
login <github username>
password <password OR github access token>
를 사용하도록 선택하면 다음 access tokens
에서 생성 될 수 있습니다.
설정-> 개발자 설정-> 개인 액세스 토큰
자체 회사에서 Github Enterprise를 사용하는 경우에도 작동합니다. machine
필드 에 엔터프라이즈 github url을 넣으십시오 .