概要 †
GitLab上のリポジトリをSourceTree(Windows)で操作します。
Windows上のGitクライアントの中では、一番使いやすいと思います。
30日の試用期間以降は、メールアドレスだけの登録が必要になります。
手順 †
- SSHでアクセスするために鍵を作成します。
鍵はどこで作っても良いですが、SourceTree(Windows)なので、puttygen.exeで作るのが簡単です。
SourceTreeからでも[ツール] - [SSHキーの作成/インポート]より呼び出せます。
pagentを使うのでどちらでも大差ないですが、他のWindows環境で使うことも考えるとパスフレーズは無しの方が使いやすいです。
- 公開鍵をGitLabへ登録します。
ログインし、[Edit Profile settings] - [SSH keys] - [Add SSH Key]
ここに公開鍵の内容を貼り付けます(Titleはなんでも良いです)
内部的には、ここのキーが/home/git/.ssh/authorized_keysに追加されます(GitLab/Debianへのインストールで構築した場合)
SSH経由の取得は、ssh://<ユーザー名(git)>@url:<ポート番号(22以外なら)>/...となるので、gitユーザーでSSHログインして操作できるという寸法です。
- プロジェクトページへ移動し、SSHのパスを取得します。
- SourceTreeの設定をします。
[ツール] - [オプション]を開きます。
[全般]では、デフォルトユーザー情報、SSHクライアントの設定をします。
[SSHキー]を入れ、[SouceTree起動時にSSHエージェントを起動]を有効にすると、SourceTree起動時に当該キーが登録された状態でpagentが起動します。
[Git]では、最低限[SSL証明書の検証をしない]のオフを確認します。
- SourceTreeで、[新規/クローンを作成する] - [元のパス/URL]に上記パスを指定して[クローン]とするだけです。
HTTPSでも可能で、この場合はSSHキー周りの設定はスキップできますが、初回にGitlabのユーザーとパスワードを求められます。
HTTPSでpushに失敗する場合は、Git/error RPC failed; result=18, HTTP code = 200iBをすると解消します。
補足 †
- 私は[Diff表示フォント]をSource Code Proにし、[外部Diff]でWinMergeも起動出来るようにしています。
検証時の環境 †
- Windows 8.1 Pro x64
- Debian Wheezy x64