MacでのSourcetreeセットアップとGitHub連携とプルリクエスト作成までの手順

※2019/02/16時点です。
※初心者向けなので、こういう時は本当はこうした方が良いとか書いてません。
※2021/12/16時点で、Bigbucketクラウドのためにアカウントを作らなくても、続行ボタンを押せるようです。

## ダウンロード

`Mac OS X 向けダウンロード`を選択
https://ja.atlassian.com/software/sourcetree
![スクリーンショット 2019-02-13 23.46.51.png](https://qiita-image-store.s3.amazonaws.com/0/175280/d5947c9c-ca94-7d80-3740-dd8f08624bd2.png)

## インストール

ダウンロードしたファイル（.zip）を展開、出てきたSourcetreeをダブルクリック
<img width="471" alt="スクリーンショット 2019-02-14 7.09.27.png" src="https://qiita-image-store.s3.amazonaws.com/0/175280/8db2f144-b87a-1e7b-8bd1-1f5d0387828f.png">

## GitHubアカウントの認証

※この画面が出ない場合は [Bitbucketを要求される場合](#bitbucketを要求される場合) を参照

歯車から`アカウント`をクリック
<img width="915" alt="スクリーンショット 2019-02-16 20.02.24.png" src="https://qiita-image-store.s3.amazonaws.com/0/175280/ed71e024-0bd2-6b0a-be37-5a58c098a688.png">

左下の`追加`をクリックし、ホストで`GitHub`を選択後、`接続アカウント`をクリック
<img width="675" alt="スクリーンショット 2019-02-16 20.02.48.png" src="https://qiita-image-store.s3.amazonaws.com/0/175280/ed6691bd-88bb-dd81-60ce-5b231703001a.png">

GitHubへログイン
<img width="368" alt="スクリーンショット 2019-02-16 20.06.49.png" src="https://qiita-image-store.s3.amazonaws.com/0/175280/072ee200-f979-c5e5-9541-2f9e7e1d3aa9.png">

`Sourcetreeを開く`をクリック
<img width="449" alt="スクリーンショット 2019-02-16 20.08.58.png" src="https://qiita-image-store.s3.amazonaws.com/0/175280/cff5f791-96ec-0ebb-94b1-dd83bcd5f85b.png">

`キーを生成しました。`をクリック（日本語怪しい・・）
<img width="497" alt="スクリーンショット 2019-02-16 20.14.40.png" src="https://qiita-image-store.s3.amazonaws.com/0/175280/e09da75a-0cda-ed00-eabe-bc0caccc34bb.png">

`作成`をクリック
<img width="472" alt="スクリーンショット 2019-02-16 20.14.49.png" src="https://qiita-image-store.s3.amazonaws.com/0/175280/b9914646-1ddb-93e8-99fe-aed97fa902f1.png">

`保存`をクリック
<img width="496" alt="スクリーンショット 2019-02-16 20.09.54.png" src="https://qiita-image-store.s3.amazonaws.com/0/175280/ec888c96-13dd-2279-0cf6-23fc6a5e3b99.png">

## 作業したいリポジトリをクローン

`URLからクローン`をクリック
<img width="763" alt="スクリーンショット 2019-02-14 7.15.16.png" src="https://qiita-image-store.s3.amazonaws.com/0/175280/862e2334-deed-ccda-c611-b589010d4ce7.png">

`ソース URL`にGitHub上の作業したいリポジトリのURLを貼り付け
<img width="766" alt="スクリーンショット 2019-02-14 7.15.32.png" src="https://qiita-image-store.s3.amazonaws.com/0/175280/9a3ed132-fa7a-fdb0-8779-dc24725bc3aa.png">

`保存時のパス`の入力枠をクリックすると、`保存時のパス`と`名前`が自動で入る、その後`クローン`をクリック
<img width="764" alt="スクリーンショット 2019-02-14 7.15.41.png" src="https://qiita-image-store.s3.amazonaws.com/0/175280/960ffe5c-59ae-0c14-ea94-e4575eb512f5.png">

クローンしたリポジトリが追加されたので、その行をダブルクリック
<img width="764" alt="スクリーンショット 2019-02-16 20.21.29.png" src="https://qiita-image-store.s3.amazonaws.com/0/175280/e516eaf9-3a28-97f4-63c3-fdca7487915a.png">

作業したいリポジトリの画面が表示される
<img width="1011" alt="スクリーンショット 2019-02-16 20.24.54.png" src="https://qiita-image-store.s3.amazonaws.com/0/175280/73c95fa4-93e3-aa1e-be38-c19202035410.png">


## 作業時の操作方法

※今回はdevelopブランチをメインブランチとし、機能追加用作業ブランチはfeature/XXXXXとする場合を想定

現在developブランチにいることを確認する（違うブランチの場合はdevelopブランチをダブルクリックする）
現在のブランチはブランチ名の左に◯がついている

ウィンドウ中央上の`ブランチ`をクリックし、新しくブランチを作成
<img width="1048" alt="スクリーンショット 2019-02-16 20.31.31.png" src="https://qiita-image-store.s3.amazonaws.com/0/175280/c741ed49-383c-4214-49a6-8561794e20fe.png">

ブランチ名はプロジェクトのルールに従うこと。入力後に`ブランチを作成`をクリック
<img width="480" alt="スクリーンショット 2019-02-16 20.30.45.png" src="https://qiita-image-store.s3.amazonaws.com/0/175280/16aa28b7-ac2e-3e5d-c9aa-5172c893bc93.png">

ブランチ作成が完了すると、そのブランチに移動する。◯が`feature/terraform`に移動している
<img width="1049" alt="スクリーンショット 2019-02-16 20.35.31.png" src="https://qiita-image-store.s3.amazonaws.com/0/175280/759ddfc8-9818-fffe-4c71-75ed37a96a97.png">

この状態で、クローンしたファイルを編集したりファイルを追加する
左メニューの`ファイルステータス`をクリックする。現在は何も表示されていないが、ファイルに変更を加えると差分が表示される。
`Finder で表示`をクリックすると、クローンした先のフォルダが表示される。
<img width="1052" alt="スクリーンショット 2019-02-16 20.37.37.png" src="https://qiita-image-store.s3.amazonaws.com/0/175280/afe73b62-4104-9ca2-9d73-d9064d497f3f.png">

`作業ツリーのファイル`に変更したファイルが表示される。
クリックして右ウィンドウで差分を確認し、OKならファイル左のチェックボックスをクリックすると、上の`Index にステージしたファイル`に移動する。
`Index にステージしたファイル`にあるものがコミット対象となるので、必要なファイルの数だけこれを繰り返す。
<img width="1051" alt="スクリーンショット 2019-02-16 20.41.10.png" src="https://qiita-image-store.s3.amazonaws.com/0/175280/c699ba22-11d7-7864-b00b-133a1c486b2b.png">

コミット対象を全てチェックしたら、下の`コミットメッセージ`をクリックする
<img width="1054" alt="スクリーンショット 2019-02-16 20.45.09.png" src="https://qiita-image-store.s3.amazonaws.com/0/175280/08cfba08-44d8-e338-8939-b5e888cb5a75.png">

コミットメッセージ枠には、コミットの目的が分かる文言を入力する。
`コミットを直ちにプッシュする`にチェックを入れ、`コミット`をクリック
<img width="1050" alt="スクリーンショット 2019-02-16 20.46.20.png" src="https://qiita-image-store.s3.amazonaws.com/0/175280/1fb21080-1623-cd58-3b28-30e4d3afe23f.png">

## GitHubでプルリクエスト（略称はプルリク、PRなど）を作成

左メニューで今回作業したブランチを右クリックし、`プル リクエストを作成...`をクリック
<img width="1051" alt="スクリーンショット 2019-02-16 20.49.59.png" src="https://qiita-image-store.s3.amazonaws.com/0/175280/4bc9c347-7f8a-e1ed-08c0-629cd3c7da30.png">

GitHubのページが開くので、下へスクロールして差分を再度確認し、OKなら右メニューの`Reviewers`でレビューしてもらうプロジェクトメンバーを選択し、`Create Pull Request`をクリック
<img width="554" alt="スクリーンショット 2019-02-16 20.54.45.png" src="https://qiita-image-store.s3.amazonaws.com/0/175280/6e5ca306-9eb3-0528-b2fd-deb004167485.png">
以上で完了。

## その先

プロジェクトメンバーに指示をもらう。

- 追加で修正が必要なら、ファイルを修正後、Sourcetreeで再度コミット＋プッシュして連絡する。
- プルリクエストがマージされた場合は、Sourcetreeに戻って左メニューのdevelopブランチをダブルクリックし、現在のブランチをdevelopに戻しておく。
- developブランチに数字が表示されている場合は、上メニューの`プル`をクリックし、developブランチを最新化する。

## Bitbucketを要求される場合

一旦Bitbucketクラウドでアカウント作ってログインしないといけないらしい。開発元が提供してるサービスを推奨するのは分かるけど、辛い。
`Create a free account today!`をクリック
**※2021/12/16時点で、Bigbucketクラウドのためにアカウントを作らなくても、続行ボタンを押せるようになり、アカウント作成をスキップできます。**
<img width="719" alt="スクリーンショット 2019-02-19 0.53.18.png" src="https://qiita-image-store.s3.amazonaws.com/0/175280/700a2b24-8c29-6406-2369-e4253909b65d.png">

詳細は省略するが、アカウント作ってログインしてBitbucket Cloudのユーザー名を登録までやると、Sourcetree側が登録完了状態になる。
<img width="721" alt="スクリーンショット 2019-02-19 1.08.14.png" src="https://qiita-image-store.s3.amazonaws.com/0/175280/ffa00bf2-b3a7-4af0-fb33-cc4ba6d24074.png">
Gitのauthorセットにチェックを入れ、`sending anonymized analytics`はOFFにする。`完了`をクリック
<img width="719" alt="スクリーンショット 2019-02-19 1.08.45.png" src="https://qiita-image-store.s3.amazonaws.com/0/175280/cf4c3bbf-21cb-b6b2-b5ee-1bb4eab6005f.png">

完了後はBitbucketアカウントは削除して良いはず。