12,964
回編集
編集の要約なし |
編集の要約なし |
||
96行目: | 96行目: | ||
user.email=<メールアドレス> | user.email=<メールアドレス> | ||
... | ... | ||
<br><br> | |||
== SSH接続 == | |||
例えば、以下の状況で運用しているGitのリモートリポジトリに接続する。<br> | |||
* リモートリポジトリがあるサーバ | |||
*: repository.example.jp (192.168.1.10) | |||
* リモートリポジトリのディレクトリ | |||
*: /home/ユーザ名/repository/repo.git | |||
* ユーザ名 | |||
*: hoge | |||
* 接続方法 | |||
*: SSH | |||
* ポート番号 | |||
*: 22 | |||
<br> | |||
この時、以下のコマンドを実行することで、リモートリポジトリにアクセスできる。<br> | |||
git clone ssh://hoge@repository.example.jp:22/home/ユーザ名/repository/repo.git | |||
<br> | |||
ここで、SSHログイン時にパスワード認証ではなく鍵認証している場合、<br> | |||
秘密鍵のファイル名が標準のid_rsaファイルであるならば、上記のコマンドでアクセスできる。<br> | |||
<br> | |||
しかし、運用上の都合で秘密鍵がid_rsaファイル以外にも複数存在している時がある。<br> | |||
そこで、秘密鍵が複数存在している場合は、サーバごとの秘密鍵の名前を示すための設定ファイルを作成する。<br> | |||
<br> | <br> | ||
以下の内容で、設定ファイルである~/.ssh/configファイルを作成する。<br> | |||
このファイルでは、複数のサーバの設定が記載できる。<br> | |||
<br> | |||
また、~/.ssh/configの設定は、Gitに限らず、全てのSSH接続で参照される。<br> | |||
# ~/.ssh/configファイル | |||
Host repo.remote | |||
HostName repository.example.jp | |||
User hoge | |||
IdentityFile ~/.ssh/id_rsa.repo.remote | |||
Port 22 | |||
Host repo.local | |||
HostName 192.168.1.100 | |||
User huga | |||
IdentityFile ~/.ssh/id_rsa.repo.local | |||
Port 22 | |||
<br> | |||
以下に、設定項目の説明を記載する。<br> | |||
* Host | |||
*: 任意の名前(エイリアスとして使用する) | |||
* HostName | |||
*: 接続するサーバのIPアドレスやFQDN | |||
* User | |||
*: サーバのユーザ名 | |||
* IdentityFile | |||
*: 秘密鍵ファイルのフルパス | |||
* Port | |||
*: SSHのポート番号 | |||
<br> | |||
~/.ssh/configファイルの作成後は、アクセス権限を変更する。<br> | |||
chmod 600 ~/.ssh/config | |||
chmod 700 ~/.ssh | |||
<br> | |||
~/.ssh/configファイルの作成後は、以下のコマンドで接続できる。<br> | |||
git clone ssh://repo.remote/home/ユーザ名/repository/repo.git | |||
<br> | |||
単純にサーバへSSH接続するだけなら、以下のようにコマンドを実行する。<br> | |||
# repository.example.jpへssh接続 | |||
ssh repo.remote | |||
# 192.168.1.100へssh接続 | |||
ssh repo.local | |||
<br><br> | |||
__FORCETOC__ | __FORCETOC__ | ||
[[カテゴリ:Git]] | [[カテゴリ:Git]] |