バージョン管理の必要に迫られて、git(GitHub)を使うことにしました。ただ、ターミナルでコマンドを打つCUI だとキツいんで、GUI の SourceTree を使うことにました。
以前、GitHub for Mac を使ったこともあったのですが、バージョン管理が目的だと SourceTree の方が向いているようです。


SourceTree の使い方については、Web上に結構情報が豊富に見つかりました。

特にここのサイト↓を最初から読んでいけば SourceTree が一通り使えようになると思います。
→・サルでもわかるGit入門 〜バージョン管理を使いこなそう〜 - どこでもプロジェクト管理バックログ 

その他の参考ページ;
→・ GitHubについてもう少し知ってみる。その4 (Source Treeを使ってみよう) - Alpac@labo
→・【連載Git目次】ほんとは簡単?SourceTreeでGitを始めよう! - naichilab - Android iOSアプリ開発メモ
→・【保存版】SourceTreeでGitの使い方まとめ1 個人開発編 - プログラミング備忘録 | 俺日記
→・SourceTreeとGitではじめるバージョン管理 #1 - あおたくノート


ここでは、初心者すぎて思わずハマったポイントをメモしておきます。

1.SourceTree(もちろん git でも)で指定したフォルダー内のファイルは、勝手に操作される!

git 管理下のフォルダは、SourceTree で操作すると連動して変更されます。考えてみれば当たり前なのですが、ファイルの内容も書き換えられるし、最悪、SourceTree でファイルを削除すれば、勝手に削除されてしまいます。git 専用のフォルダを用意しましょう。


2.昔の記事と SourceTree のメニュー名が違う!git のコマンドとの対応が分からない!

SourceTree はバージョンによって、かなり画面構成や日本語訳が違うようです。
英語のメニュー名や、git のコマンドとの対応を知りたいときは、SourceTree のメニューを英語に切り替えてしまうのも手です。

SourceTree>環境設定>言語 で English にして SourceTree を再起動させると、英語メニューになります。

(取り消し方のメニューの対応については、別記事で。)


3.間違えたので、操作(コミット)を取り消したい!

取り消し方については特に悩んだので、別記事にしました。


4.ブランチの使い方が分からない!

代表的なものに git-flow と、GitHub Flow という運営方針があるようです。git-flow は SourceTree で標準で使えます(「git-flow」ボタンを押すだけ)。
ただ、これらは運営方針なので他にもやり方はいろいろあるし、実際はプロジェクトの実態に合わせて皆アレンジして使っているようです。

参考;
→・Gitを使おう その3 git-flowでブランチの使い方が簡単に! - 神戸ホームページ制作センター
→・【保存版】SourceTreeでGitの使い方まとめ2 チーム開発編 - プログラミング備忘録 | 俺日記
→・SourceTreeでgit-flowを利用する - らぼ★ろぐ
→・Gitブランチを使いこなすgit-flow/GitHub Flow入門(1):いまさら聞けない、成功するブランチモデルとgit-flowの基礎知識 (1/2) - @IT
→・Gitブランチを使いこなすgit-flow/GitHub Flow入門(終):プルリクエスト/レビューを取り込んだ、よりシンプルなGitHub Flowの運用を図解する (1/2) - @IT
→・小規模開発には git-flow よりも GitHub Flow で捗る - TMD45INC!!!
→・GitHub Flow (Japanese translation)


5.マージしたブランチを削除しても、コミットグラフは消えない!

tempブランチを作って masterブランチにマージ後、tempブランチを削除しても tempブランチのコミットの線は消えず、グラフの見た目は変わりません。(tempブランチという名前は無くなります。)

これでいいの?
→いいんです!
 よく考えたら、修正した(tempブランチだった)コミットまで消えたら、masterブランチでの修正履歴が分からなくなるもんね。 


6.外部Diff / マージツール が立ち上がらない!

SourceTree>環境設定>Diff>外部Diff / Merge の「差分表示ツール」と「マージツール」から選択します。デフォルトは「FileMerge」になっています。
Mac に Xcode がインストールされていれば、FileMerge も入っているそうです。
(私は、Command Line Tools しか入れていないので、入っていなかった。)

この際 Xcode を入れるか迷いましたが、選択肢に載っている他のツールのうち無料で表示が見やすいっぽい、P4Merge をインストールすることにしました。あとは、上記の環境設定で P4Merge を設定すれば立ち上がります。


7.プルリクエストを使ってみたい!

GitHub といえば、プルリクエスト(Pull Request)。自分のリポジトリでも出来ます。
参考;
→・GitHub初心者はForkしない方のPull Requestから入門しよう - QNYP Blog