忍者ブログ
  • 2024.02
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 2024.04
[PR]
×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

【2024/03/29 17:45 】 |
秘密鍵追加
git-hubやgit-labでssh接続する手順

httpだとらくちんなんだけど、リポジトリが大きすぎると取って来れないことがある
とりあえずzipで落としてこようとか思っても、ファイルがでかすぎて応答時間限界を超えてサーバがエラーを返したり。。


秘密鍵、公開鍵を作成

$ ssh-keygen -t rsa -C xxx@example.com
最後はメアド。

対話式に、書き出すファイル名を聞かれるので入力する
github_key
とかにすると、

github_key(秘密鍵)
github_key.pub(公開鍵)
が作成される。

秘密鍵に
$ chmod 600 github_key
を忘れずに(そのままでなってると思うけど)
さらに移動しておく
$ mv github_key ~/.ssh/

で、.ssh/configに以下を記述

Host host
User git
HostName xxx.xxx.xxx.xxx
TCPKeepAlive yes
identitiesonly yes
IdentityFile ~/.ssh/github_key

Hostの名前は分かりやすければなんでもいい
Userはgitにすること。(git-hubへのコマンドは全部ユーザ名gitでやるので)

さらに、キーを永続的に登録するため、以下のコマンドが必要になることがある

$ ssh-add -K .ssh/gitlab_key

ここが重要。知らなかった

で、接続できるはず

$ git clone git@example.co.jp:path/to/repository.git

大きすぎるときは

$ git clone --depth 1 git@example.co.jp:path/to/repository.git
とかをすると階層を限定して取って来れる。

で、あとはこんな感じで取ってくる
$ git fetch --depth 10
$ git fetch --depth 100 # 値は調整しつつ
$ git fetch --unshallow # 最後に全部落とす このオプションは最新のgitでないとない
参考

ちなみに、単にssh接続を確認したいときは

$ ssh -vT git@example.co.jp
とか。-vオプションをつけるとデバッグ表示する
(ただし、sshが繋がってもgitが取って来れないときもある)

PR
【2014/10/27 13:02 】 | git | 有り難いご意見(0)
| ホーム |