SourceTree 設定手順 覚書【Windows】

# SourceTree 設定手順 覚書【Windows】

[SSH認証キーをGitLabに登録・設定手順 覚書](http://qiita.com/redamoon/items/07e445d1fce360cb5fa3 "SSH認証キーをGitLabに登録・設定手順 覚書") をアップしたので、今回は、SourceTreeの設定手順をまとめたいと思います。

色々と情報が多かったので、自分用のメモになります。

こちらの記事で、随時更新していきたいと思います。

## 設定条件
* Gitサーバが既に用意している（ホスティングサービスではなく自分で構築したもの）
* Winで設定

## SourceTree設定 windows版

以下よりSourceTreeのインストーラをダウンロードして実行します。

[SourceTree公式サイト](http://sourcetreeapp.com/ "SourceTree公式サイト")

## Gitコマンドをインストール

インストール後、SourceTreeを起動しセットアップウィザードが立ち上がります。

最初に gitコマンドのインストール方法を設定します。

SourceTreeと一緒にGitをインストールする場合は、一番上の「システム全体ではなく、SourceTree単独で使うためだけの内蔵用のGitをダウンロードする」を選択します。

![Gitコマンドをインストール](https://qiita-image-store.s3.amazonaws.com/0/34020/608d7b29-715f-c392-e3f4-df52f63c5707.jpeg)

## Mercurialはインストールしない

今回は、Mercurialをインストールしない。

「Mercurialを使いたくない」を選択します。

![Mercurialをインストールしない](https://qiita-image-store.s3.amazonaws.com/0/34020/8f1d25d6-2e70-2528-80f6-6d38d2838e17.jpeg)

## Git初期設定

コミットユーザ名とメールアドレスを設定します。

「SourceTreeにgitとMercurialのグローバル設定ファイルの変更を許す」と「改行の自動処理を設定する（推奨）」にもチェック

![コミットユーザ名とメールアドレスを設定](https://qiita-image-store.s3.amazonaws.com/0/34020/8671f1da-8ec3-b7e1-15db-0564a8d52392.jpeg)

## SSH接続設定

Gitサーバに接続するツールを選択します。

PuTTYが推奨されているので「PuTTY/Plinkを使う（推奨）」を選択します。

![PuTTY/Plinkを使う（推奨）](https://qiita-image-store.s3.amazonaws.com/0/34020/fb44d781-ac1a-82ee-afec-ee3a50732bbd.jpeg)

SSHキーを読み込みますか？ 「No」を選択します。

![SSHキーを読み込みますか？](https://qiita-image-store.s3.amazonaws.com/0/34020/abfbcb35-bce8-1393-75a1-01df7310491f.jpeg)

※あとで追加設定が可能

Gitサーバに接続する方法は2つあります。

* http接続
* SSH接続

http接続では、アップロード制限などがあるため通常はSSHで接続設定を行う。

SSHで接続するには公開鍵と秘密鍵による認証を行えるようにする必要があります。

## SSH公開鍵・秘密鍵を作成する

1. メニュー
2. ツール
3. SSHキーの作成/インポートをクリック

![SSHキーの作成/インポートをクリック](https://qiita-image-store.s3.amazonaws.com/0/34020/f2c2ea8b-95f5-01d7-99f1-2059e5f95922.jpeg)

PuTTYが立ち上がります。

「Generate」ボタンをクリックします。

![SSHキーの作成/インポートをクリック](https://qiita-image-store.s3.amazonaws.com/0/34020/7eed80e2-e0ff-233d-eab9-1f1f193e155c.jpeg)

空白部分でマウスを適当に動かしてランダム値を生成します。プログレスバーがいっぱいになるまで続けます。

![SSHキーの作成/インポートをクリック](https://qiita-image-store.s3.amazonaws.com/0/34020/0d008823-ff97-1055-e8fb-61358b2df2e5.jpeg)

「Save public key」をクリックして SSH 公開鍵を保存

保存場所は、好きな場所に保存できます。（ドキュメントの中にputtyフォルダを作成し保存しました。）

ファイル名は「id_rsa.pub」にします。※自分があとでみてわかる名前で保存します。

![「Save public key」](https://qiita-image-store.s3.amazonaws.com/0/34020/63aba567-068d-fcde-2cf2-c8e8c75efe2b.jpeg)

「Save private key」をクリックして SSH 秘密鍵を保存します。

「秘密鍵のパスフレーズが空欄だけどよろしいですか？」といった確認メッセージが表示されますが、今回はパスフレーズをつけずに保存するので、「OK」をクリックして保存します。保存先は、先ほど作成したマイドキュメントの 「PuTTY」フォルダに。ファイル名は「id_rsa.ppk」とします。

![「Save public key」](https://qiita-image-store.s3.amazonaws.com/0/34020/e5a2ff61-3955-8787-82df-cf9f545ac9e9.jpeg)

## 秘密鍵の登録

1. メニュー
2. ツール
3. Launch SSH Agent
4. Pagentを起動

Add Keyボタンで作成した秘密鍵を登録し、パスフレーズを入力

![Add Keyボタン](https://qiita-image-store.s3.amazonaws.com/0/34020/eecf7bdc-1d27-4278-3a4a-58a848100eff.jpeg)

## 公開鍵登録

サーバ側に、今回作成した公開鍵のソースを貼り付ける

GitLab、github、その他サーバで公開鍵の設定部分は異なります。

## リモートの設定

[Clone/New]からリポジトリを登録します。

![Clone/New](https://qiita-image-store.s3.amazonaws.com/0/34020/3ef3628c-ec79-be6a-3578-3eb44d72759a.jpeg)


* 元のパスにリモート先のリポジトリURLを入力
* ローカルリポジトリのパスを入力

### リポジトリURL

プロトコル | URL フォーマット
:-------- | :------
ssh       | ssh://[user@]host.xz[:port]/path/to/repo.git
          | [user@]host.xz:path/to/repo.git
git       | git://host.xz[:port]/path/to/repo.git
http[s]   | http[s]://host.xz[:port]/path/to/repo.git

## 参考サイト
* [Windows版SourceTreeを設定する](http://blog.suusuke.info/2014/01/05/windows%E7%89%88sourcetree%E3%82%92%E8%A8%AD%E5%AE%9A%E3%81%99%E3%82%8B/ "Windows版SourceTreeを設定する")
* [WindowsのGitクライアントSourceTreeのインストールと初期設定](http://www.karakaram.com/windows-git-source-tree "WindowsのGitクライアントSourceTreeのインストールと初期設定") 

## 参考書籍

[開発効率をUPする Git逆引き入門](http://www.amazon.co.jp/%E9%96%8B%E7%99%BA%E5%8A%B9%E7%8E%87%E3%82%92UP%E3%81%99%E3%82%8B-Git%E9%80%86%E5%BC%95%E3%81%8D%E5%85%A5%E9%96%80-%E6%9D%BE%E4%B8%8B-%E9%9B%85%E5%92%8C/dp/4863541465 "開発効率をUPする Git逆引き入門") を購入したので、整理してまとめていきたいと思います。