~/.ssh/config のHost情報を使ってgit clone

最近久しぶりに秘密鍵と公開鍵を作って,GitサーバにSSH接続しようとしたら,色々と忘れていたので戒めとして書く.

~/.ssh

LinuxMacだと各ユーザーのホームディレクトリに .ssh が隠れているかと思う. これは ssh-keygen で作った秘密鍵と公開鍵が置かれるデフォルトのディレクトリである.

~/.ssh/config

~/.ssh/config は複数サーバーのSSH接続を管理するためのファイル.

~/.ssh/config をエディタで開き,

Host hoge
  User git
  Hostname hoge.com
  Port 10000
  IdentityFile ~/.ssh/hoge_id

のような記述を追加し保存すると,以降, ssh -i ~/.ssh/hoge_id -p 10000 -l git hoge.com とせずとも, ssh hogeSSH接続ができるようになる.

SSHでのgit clone

本題.

Githubであったり,個人のGitサーバなど,リモート上のリポジトリSSHを用いて git clone したい時は, git clone hoge:<リポジトリ名> とすることで,リモート上のリポジトリをcloneできる.(パスワードを求められる場合があるが,これは ssh-keygen で入力したパスワードを入力すればよい)

もし, ~/.ssh/config をいじるのに抵抗がある場合は,この記事のように git コマンドをラップするという方法もある.

qiita.com