SourceTree(Git)で SSH &ポート指定でリポジトリを clone する方法

このエントリーをはてなブックマークに追加

さくらVPSを借りてGitlabをいれてGitの管理をしています。基本的にはSSHキーを登録してもらい、黒い画面で clone など作業しているのですが、中にはコマンドでの運用が苦手という人も。

そんなときは SourceTree などを利用してもらうようにしているのですが、SSHのポートを1箇所限定に設定しているため、SSHのconfigで設定をしていないと、そのままではSSH経由でのアクセスができないようにしてあります。

configの設定をしてもらう方法を説明していたのですが、デザイナーなどで設定自体苦手という人もいるため、SSHのポート指定が必要な場合でも SourceTree だけで設定できる方法をメモしておきます。

SourceTree の設定手順

まずSSHキーの登録をサービスに登録してあるという前提で説明をすすめたいと思います。

SourceTree でリポジトリを追加する場合は、ブックマークウィンドウの左上アイコンをクリックします。

2014041502

ソースパス / URL に リポジトリのパスを入れてみます。Gitlab であれば git@server.domain:username/repository.git のようなパスになっています。

2014041503

入力後にフォーカスを別のテキストボックスに移動させると、先ほど入力したソースパスがclone可能なリポジトリかどうかをチェックします。

ポートの限定をしている場合で、SSH の config を設定していない場合は、ソースパス/ソース URL として正しくありません というWARNINGが表示されます。

2014041504

configの設定をしていない場合は、このソースパスを変更します。ソースパスの頭に ssh://をつけて、ドメインの後ろのコロンのあとにポート番号を入れ、ポートの後ろをスラッシュで区切ります。

ssh://git@server.domain:0000/username/repository.git

0000を実際のポート番号に変更してみてください。

成功したら、「これはGitリポジトリです」の表示がされ、右下のクローンが押せるようになります。

保存先のパスを設定して、クローンをしてください。

2014041505

おまけ: HTTP で取得する場合

HTTPでも取得することができます。ソースパスに http://〜 のリポジトリを指定すると、ユーザー名とパスワードの入力が求められます。

2014041506

Gitlab の場合は Gitlab のユーザー名とパスワードを入力になります。

Mac の場合はキーチェーンにパスワードを保存可能なため、一度入力して保存してしまえば、その後の push や pull もパスワード入力せずとも SourceTree で自動で管理してくれるようになります。