[〜#〜] edit [〜#〜]: この男はまったく同じように成功します 、理解できませんなぜそれが私のために働いていないのかを調べてください。
git
をインストールし、公開鍵/秘密鍵で許可/ SSH認証をセットアップしました(Centos 6.5)。私は問題なく使用してプル/プッシュすることができます:
git clone [email protected]:projects/boilerplate-template
ユーザー名はgit
、コードは/home/git/projects
に配置され、リポジトリはgit --init --shared boilerplate-template
で作成されます。
別のプロジェクトでBowerにboilerplate-template
を要求するにはどうすればよいですか?
次のbower.jsonファイルを試してみましたが、うまくいきません。
{
"name": "my/newproject",
"dependencies": {
"boilerplate-template": "git://code.organization.com:projects/boilerplate-template"
}
}
[〜#〜] ecmderr [〜#〜]:「git ls-remote --tags --heads git:// codeの実行に失敗しました。 organization.com:projects/boilerplate-template、exit code 128はcode.organization.com(ポートプロジェクト)を検索できません...
悲しいことに、:project
はポートではなくパスなので失敗します。 ssh://
の代わりにgit://
でも試しました:
[〜#〜] enotfound [〜#〜]:パッケージssh://code.organization.com:projects/boilerplate-templateが見つかりません。
OK、ここで解決策を見つけました: 内部のプライベートライブラリのパッケージ管理ツールとしてBowerを使用 。 git://
またはssh://
を削除して、.git
サフィックスを追加するだけです。
"[email protected]:projects/boilerplate-template.git#~1"
また、プライベートリポジトリにGithubとBowerを使用している場合、リモートサーバーで.netrc
を実行する必要がある場合は、bower install
ファイルを作成できます。
例えばDOドロップレットがあり、sshキーを使用するgitリポジトリをチェックアウトする必要がありますが、bower install
をプライベートなdepで実行する必要があります。 .netrc
ファイルをリモートマシンに追加する場合、deploys/buildsに行くとよいでしょう。
// .netrc where someToken is generated in Github under Personal access token
machine github.com
login userName
password someToken
bower login
作業中なので、このアプローチを採用しました。 <TOKEN>
が生成されます ここ 。 Githubでホストされているプライベートリポジトリで機能します。
"dependencies": {
"your-package": "https://<TOKEN>:[email protected]/Account/Repository.git"
}
GitHubからプライベートリポジトリをダウンロードしようとしたときに、TeamCityがこの問題を抱えていました。これが誰かに役立つ場合、SSHを使用して解決し、 GitHub Personal Access Token を実行して解決しましたbower login
前 bower install
:
Bower.jsonの依存関係の例:
"repository": "[email protected]:Account/Repository.git"
ビルドスクリプト内で実行するコマンド:
bower login -t {GitHub Personal Access Token}
bower install
https://github.com/settings/tokens に進み、トークンを生成します
bower login -t {your token}
bower install
プライベートgithubリポジトリでのみ動作しますが、私はフォローで終了しました。
Githubアクセストークンを生成します ここ および環境変数GITHUB_TOKEN
として設定します
.bowerrc
で短縮レゾルバを定義します:
"shorthand_resolver": "https://${GITHUB_TOKEN}@github.com/{{owner}}/{{package}}.git"
これで、依存関係をbower install me/my-private-package
として追加するか、bower.json
にリストできます。
"dependencies": {
"my-private-package": "me/my-private-package"
}
Herokuビルドでも機能します。
他の人が述べたように、パッケージの場所を次のように設定します。
"[email protected]:projects/yourproject.git"
Bowerがgitリポジトリからプルできるようにします。
WindowsでSSHの問題が発生した場合は、次の手順を実行できます。
anything.ppk
としてユーザーの.sshフォルダーに保存しますssh-rsa
で始まるテキストをクリップボードにコピーしますSettings -> SSH keys -> Add SSH key
にキーにタイトルを付け、PuttyGenからキー部分にテキストを貼り付けますGIT_SSH
という名前の環境変数を、値がPuTTYツールPLINK.exeへのパスとなるように追加します。 C:\Program Files\PuTTY\PLINK.exe
anything.ppk
キーをページェントに追加します(C:\pathtopageant\pageant.exe C:\Users\myuser\.ssh\anything.ppk
を使用してスタートアップフォルダーにショートカットを追加し、スタートアップ時にキーをページェントに自動的に追加できます)PuTTY.exe
自体を開き、github entepriseホスト名(上記の例ではcode.organization.com)を入力するか、ホスト名テキストボックスに「github.com」を入力して、「開く」をクリックします。おそらくホストを信頼するように求められますが、bowerは初回実行時にこれを行うことができず、ハングしただけなので、yesをクリックしてknown_hostsファイルに追加します。bower install
を実行します!プライベートリポジトリからもクローンを作成している場合にも、この問題に直面する可能性があります。受け入れられた答えは正しいですが、私はこの懸念を明確にしたいと思います:
マシンにgithub SSHでアクセスできる場合は、gitリポジトリに移動して「SSHでクローン」リンクをコピーし、bower.jsonファイル内に配置します。
マシンにgithubのhttps(ログイン認証)が設定されている場合は、「httpsでクローン」リンクをコピーして、bower.jsonファイル内に配置します。倉庫
例:SSHリンク:[email protected]:Account/Repository.git HTTPSリンク: https://github.com/Account/Repository.git
Bower.jsonファイル:
「依存関係」:{ 「リポジトリ」:「ここにSSH/HTTPSクローン行を貼り付けます」 }