プライベートGithubリポジトリを"dependency"
のpackage.json
としてリストするにはどうすればいいですか?私は npmのGithub URLryanve/example
のような構文を試しましたが、packageフォルダでnpm install
をすると個人的な依存関係のための "インストールできませんでした"エラーが出ます。プライベートリポジトリに依存するための特別な構文(または他の何らかのメカニズム)はありますか?
それは httpsとoauthまたはsshで行うことができます。
httpsとoauth:アクセストークンを作成します "repo"スコープを持ち、そして この構文を使います =:
"package-name": "git+https://<github_token>:[email protected]/<user>/<repo>.git"
または
ssh:setup ssh そして次の構文を使います。
"package-name": "git+ssh://[email protected]:<user>/<repo>.git"
(ユーザーの前にスラッシュの代わりにコロンを使用することに注意してください)
誰かがGit Labに別の選択肢を探していても上記の選択肢がうまくいかない場合は、別の選択肢があります。 Git Labサーバーのローカルインストールの場合、以下の方法でパッケージの依存関係を含めることができることがわかりました。そのためにアクセストークンを生成して使用しました。
$ npm install --save-dev https://git.yourdomain.com/userOrGroup/gitLabProjectName/repository/archive.tar.gz?private_token=InsertYourAccessTokenHere
もちろん、この方法でアクセスキーを使用している場合、アクセス権は限られているはずです。
がんばろう!
Gitではhttps形式があります
https://github.com/equivalent/we_demand_serverless_Ruby.git
この形式はユーザー+パスワードを受け入れます
https://bot-user:[email protected]/equivalent/we_demand_serverless_Ruby.git
それで、あなたがすることができる新しいユーザーを作成することですボットとして、彼がNPMモジュールにロードしたいリポジトリをただ読むことができるだけの十分な許可だけを追加して、ただ直接それを持つあなたのpackages.json
Github > Click on Profile > Settings > Developer settings > Personal access tokens > Generate new token
Select Scopesパートで、オンにしますrepo:プライベートリポジトリのフルコントロール
これはtokenがユーザーが見ることができるプライベートリポジトリにアクセスできるようにするためです。
組織に新しいグループを作成し、このユーザーをグループに追加して、この方法でプルされると予想されるリポジトリのみを追加します(読み取り専用アクセス許可)。
あなたはこの設定をプッシュすることを確実にする必要がありますプライベートリポジトリにのみ
その後、これをあなたの/ packages.jsonに追加できます(bot-userはユーザー名、xxxxxxxxxは生成された個人トークンです)。
// packages.json
{
// ....
"name_of_my_lib": "https://bot-user:[email protected]/ghuser/name_of_my_lib.git"
// ...
}
https://blog.eq8.eu/til/pull-git-private-repo-from-github-from-npm-modules-or-bundler.html