gitでsshのポート番号を指定する

ssh経由でgitを利用するときデフォルトの22番ポートで運用している場合は
ホスト名 repo.example.comでユーザ名がuserだとすると

git clone user@repo.example.com:repos/app.git

とすればよい。

ローカルマシンとユーザが同じであればさらに

git clone repo.example.com:repos/app.git

とユーザ名を省略できる。

マニュアルにある書式はこう書いてある。

An alternative scp-like syntax may also be used with the ssh protocol:
・[user@]host.xz:path/to/repo.git/

22番ポートでSSHを運用するとアタックが結構くるので
私は基本的に22番ポートは使っていない。

gitでポートを指定する場合はもう少し詳しく書いてあげる必要がある。

2222ポートでSSHを利用している場合

git clone ssh://user@repo.example.com:2222/home/user/repos/app.git

とすればcloneできる。

マニュアルの書式は

ssh://[user@]host.xz[:port]/path/to/repo.git/

pushも同様だ。

git  ssh://user@repo.example.com:2222/home/user/repos/app.git master

ローカルマシンとユーザが同じであれば

git clone ssh://repo.example.com:2222/home/user/repos/app.git

~userというユーザディレクトリのパスも有効

git clone ssh://repo.example.com:2222/~user/repos/app.git

/~userと書く

残念ながらパスは相対パスでは書けないようで

git clone ssh://repo.example.com:2222repos/app.git

git clone ssh://repo.example.com:2222:repos/app.git

は動作しない

詳細は下記マニュアルに書いてある。

git-clone(1) Manual Page – GIT URLS

マニュアルがインストールされている場合はmanコマンドでも確認できる。

man git-clone

関連記事

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です