Git GUIツール比較:GitHub Desktop・Sourcetree・GitKraken・TortoiseGit・Forkの違い

広告

Gitを使う方法は、コマンドを入力する方法だけではありません。

画面上のボタンやメニューからGitを操作できるツールもあります。

このようなツールをGit GUI(ギット・ジーユーアイ)と呼びます。

GUIとは、文字だけで操作するのではなく、画面を見ながらマウスなどで操作できる仕組みのことです。

この記事では、代表的なGit GUIについて、

  • どのような特徴があるのか
  • どのくらい長く使われているのか
  • 人気や知名度はどの程度なのか
  • どのような人や環境に向いているのか

を比較します。

先に結論:代表的なGit GUI

代表的なGit GUIには、次のようなものがあります。

ツール登場時期の目安主な特徴
GitHub Desktop2015年GitHubとの連携、分かりやすい画面
Sourcetree2011年には公開済みCommit履歴やBranchの表示
GitKraken Desktop2015年Branchや履歴の可視化
TortoiseGit2008年Windows Explorerとの統合
Fork2016年頃すっきりしたUIと豊富なGit操作

GitHub Desktopは2015年にGitHubから公開されました。

Sourcetreeは2011年にはMac向けGitクライアントとして存在しており、この年にAtlassianが買収しています。Windows版は2013年に公開されました。

GitKrakenは2015年に最初のバージョンが公開され、2016年にVersion 1.0となりました。

TortoiseGitは2008年にプロジェクトが始まり、Version 0.1.0が2008年12月12日に公開されています。

Forkは少なくとも2016年には1.0系が公開されており、現在まで継続して開発されています。

ここで重要なのは、

リリースが古いツールほど劣っているわけではない

ということです。

長く使われていることは、それだけ長期間にわたって利用されてきた実績があるとも考えられます。

Git GUIとは

Gitは、例えば次のようなコマンドで操作できます。

git add
git commit
git push
git pull
git switch

Git GUIを使うと、これらに相当する操作を画面から行えます。

変更されたファイルを確認
↓
Commit
↓
Push
↓
Branchを切り替える
↓
Pull

重要なのは、GUIを使ってもGitの仕組みそのものは変わらないということです。

Git GUIは、Gitを操作するためのインターフェースです。

Git GUIの人気度は?

「どのGit GUIが一番使われているのか」と気になる人もいるでしょう。

しかし、ブラウザーのシェアのように、世界中のGit GUI利用者を正確に集計した公式ランキングはありません。

そのため、

1位 GitHub Desktop ○○%
2位 Sourcetree ○○%
3位 GitKraken ○○%

のような利用率ランキングを断定することは困難です。

一方、知名度、利用実績、現在の開発状況などから、代表性の目安を示すことはできます。

ツール人気・知名度の目安
GitHub Desktop★★★★★
Sourcetree★★★★★
GitKraken Desktop★★★★☆
TortoiseGit★★★☆☆
Fork★★★☆☆

※この星は公式な市場シェアではありません。知名度や代表性を分かりやすく示すための目安です。

したがって、

★★★★★だから優れていて、★★★だから劣っている

という意味ではありません。

利用しているサービスやOS、開発方法によって適したツールは変わります。

リリース年度を見る意味

Git GUIを比較するとき、リリース年度も参考になります。

例えばTortoiseGitは2008年から続いているツールです。

一方、GitHub Desktopは2015年登場です。

ただし、

古いツール
= 時代遅れ

新しいツール
= 優れている

と考えるのは適切ではありません。

リリース年度は、

「どのくらい長く利用されてきたのか」

を見るための情報として考えるとよいでしょう。

さらに重要なのは、

現在も継続して開発・更新されているか

という点です。

GitHub Desktop

GitHub Desktopは、GitHubが提供しているGit GUIです。

2015年に公開され、WindowsとmacOSに対応しています。

特徴

GitHub Desktopは、GitHubとの連携が強く、画面構成も比較的分かりやすく作られています。

例えば、

  • Clone
  • Branch作成
  • Commit
  • Push
  • Pull
  • Fetch
  • Merge

といった日常的なGit操作を行えます。

さらに、

  • Rebase
  • Cherry-pick
  • Stash
  • Reset
  • Revert
  • Commitの並べ替え
  • 過去のCommitのcheckout

などにも対応しています。

つまり、

GitHub Desktopは初心者向けの簡易的なGitツールではありません。

初めてGitを使う人にも扱いやすい一方で、実際の開発で必要になるさまざまなGit操作にも対応しています。

こんな人に向いている

  • GitHubを利用している人
  • GitHubとの連携を重視する人
  • 分かりやすい画面を好む人
  • Gitの操作をGUIで行いたい人
  • 学習から実務まで同じツールを使いたい人

Sourcetree

Sourcetreeは、Atlassianが提供しているGit GUIです。

2011年にはすでにMac用Gitクライアントとして公開されており、同年Atlassianが買収しました。

Windows版は2013年に公開されています。

特徴

Sourcetreeは、Commit履歴やBranchの流れをグラフで確認しやすいことが特徴です。

例えば、

main
 ├─ feature-a
 │    └─ commit
 │
 └─ feature-b
      └─ commit

といったBranchの分岐を視覚的に確認できます。

Gitに関する多くの情報を一つの画面で確認できるため、履歴やBranchの状態を細かく追いたい場合に便利です。

AtlassianはBitbucketも提供しているため、Bitbucketを使う環境でもよく知られているツールです。

こんな人に向いている

  • Commit履歴を詳しく確認したい人
  • Branchの流れをグラフで確認したい人
  • Bitbucketを利用している人
  • Gitの状態を細かく確認しながら操作したい人

GitKraken Desktop

GitKraken Desktopは2015年に登場したGit GUIです。

Windows、macOS、Linuxに対応しています。

特徴

GitKrakenの大きな特徴は、Gitの履歴やBranch構造を視覚的に確認しやすいことです。

複数のBranchが並行して開発されている場合でも、

どのBranchから分かれたのか

どこでMergeされたのか

どのCommitがどのBranchに属しているのか

といった関係を確認しやすくなっています。

こんな人に向いている

  • 複数のBranchを扱う人
  • Git履歴の可視化を重視する人
  • Windows、macOS、Linuxで同じGit GUIを使いたい人
  • 複雑なRepositoryを扱う人

機能や利用条件によってプランが異なるため、導入時にはライセンスも確認するとよいでしょう。

TortoiseGit

TortoiseGitは2008年に始まったWindows向けGitクライアントです。

TortoiseSVNの考え方を参考に、WindowsのShellにGit操作を統合するプロジェクトとして開発が始まりました。

特徴

TortoiseGitは、他のGit GUIとは少し操作方法が異なります。

Windowsのエクスプローラーに統合され、Repositoryのフォルダーを右クリックして操作します。

例えば、

Git Commit
Git Pull
Git Push
Git Log

などを実行できます。

Windowsのファイル操作の延長としてGitを操作できるのが特徴です。

長く使われているが現在も現役

TortoiseGitは今回紹介する中でも特に歴史の長いGit GUIです。

しかし、古いから開発が終了しているわけではありません。

現在も継続して開発・更新されています。

こんな人に向いている

  • Windowsを中心に使う人
  • エクスプローラーからGitを操作したい人
  • TortoiseSVNを使った経験がある人
  • フォルダーを中心に作業したい人

Fork

Forkは、WindowsとmacOS向けのGit GUIです。

少なくとも2016年にはVersion 1.0系が公開されており、その後も継続して更新されています。

特徴

Forkは、比較的すっきりした画面と豊富なGit操作を両立しています。

例えば、

  • Rebase
  • Interactive Rebase
  • Cherry-pick
  • Stash
  • Worktree
  • Bisect
  • Merge conflictの解決

などに対応しています。

Gitの履歴も視覚的に確認しやすく、画面をシンプルに保ちながら細かなGit操作をしたい場合に便利です。

こんな人に向いている

  • すっきりした画面を好む人
  • Git履歴を詳しく確認したい人
  • RebaseやCherry-pickを利用する人
  • GUIから細かなGit操作をしたい人

Visual StudioのGit機能

Visual StudioにはGit機能が組み込まれています。

C#や.NETの開発では、Visual Studioから離れずに、

  • Commit
  • Push
  • Pull
  • Fetch
  • Branch作成
  • Merge
  • Conflictの解決

などを行えます。

メリット

コードを書いている画面から移動せず、そのままGit操作を行えることが大きなメリットです。

C#や.NETを中心に開発する場合には便利です。

Gitを学ぶ場合の注意点

一方、Gitを初めて学ぶ場合には、

Visual Studioの操作

Gitの操作

が一体化して見える場合があります。

Gitそのものの仕組みを意識して学習したい場合には、GitHub Desktopなどの独立したGit GUIを使うことで、

「ここからはGitの操作をしている」

という区別が分かりやすくなります。

Visual Studio CodeのGit機能

Visual Studio CodeにもGit機能が標準搭載されています。

コードを書きながら、

  • 変更内容の確認
  • Commit
  • Push
  • Pull
  • Branch操作

などを行えます。

さらにGitLensなどの拡張機能を利用すると、

  • Commit履歴
  • 誰がその行を変更したか
  • Branch履歴
  • Repository情報

なども詳しく確認できます。

主なGit GUIをまとめて比較

ツール登場時期の目安WindowsmacOSLinux主な特徴
GitHub Desktop2015年×GitHubとの連携、分かりやすい画面
Sourcetree2011年には公開済み×Commit履歴・Branch表示
GitKraken Desktop2015年Branchや履歴の可視化
TortoiseGit2008年××Windows Explorerとの統合
Fork2016年頃×すっきりしたUIと豊富なGit操作
Visual Studio××C#・.NET開発との統合
Visual Studio CodeエディターとGit操作の統合

※登場時期は、各公式資料やリリース履歴から確認できる時期を基準にしています。

GitHub Desktopは初心者専用ではない

GitHub Desktopは画面が分かりやすいため、

「初心者向けのGitツール」

として紹介されることがあります。

確かに、初めてGitを使う人にも扱いやすいツールです。

しかし、

初心者
↓
GitHub Desktop
↓
Gitに慣れる
↓
SourcetreeやGitKrakenへ移行

という段階を必ず踏む必要があるわけではありません。

GitHub Desktopからも、

Rebase
Cherry-pick
Stash
Reset
Revert

などの操作を行えます。

そのため、GitHub Desktopが自分やチームの開発方法に合っているのであれば、そのまま実務で使い続けることができます。

Git GUIに単純な上下関係はない

Git GUIの違いを、

初心者向け
↓
中級者向け
↓
上級者向け

という上下関係で考えるのは適切ではありません。

GitHub Desktopは、GitHubとの連携と分かりやすい操作を重視しています。

Sourcetreeは、BranchやCommitの状態を詳しく確認しやすい画面構成です。

GitKrakenは、Git履歴やBranch構造の可視化を得意としています。

TortoiseGitは、Windowsのエクスプローラーとの統合が大きな特徴です。

Forkは、すっきりした画面と細かなGit操作を両立しています。

つまり、それぞれの違いは主に、

  • 画面構成
  • Git履歴の見せ方
  • 操作へのアクセス方法
  • GitHubやBitbucketとの連携
  • 対応OS
  • ライセンス
  • チームや個人の好み

にあります。

機能数が多ければ上級者向け、少なければ初心者向け、という単純な関係ではありません。

Gitを学ぶときに重要なのはツール名ではない

Gitを学ぶときに大切なのは、どのGUIを使っているかではありません。

まず理解したいのは、次のような流れです。

Repository
↓
Branchを作る
↓
ファイルを変更する
↓
Commit
↓
Push
↓
Pull Request
↓
Review
↓
Merge
↓
Pull

例えばGitHub Desktopを使っている場合でも、単にボタンの位置を覚えるのではなく、

今どのBranchにいるのか

何をCommitするのか

どこへPushするのか

なぜPullするのか

なぜPull Requestを作るのか

なぜReviewしてからMergeするのか

を理解することが重要です。

この考え方が身についていれば、別のGit GUIを使うことになっても対応しやすくなります。

実務ではツールが変わってもGitは同じ

GitHub Desktopで、

Commit

を実行しても、

Sourcetreeで、

Commit

を実行しても、

コマンドラインで、

git commit

を実行しても、基本的には同じGitの仕組みを操作しています。

GUIが変われば、ボタンの位置や画面構成は変わります。

しかし、Gitの概念そのものが変わるわけではありません。

そのため重要なのは、

特定のツールの操作方法だけでなく、Gitそのものの仕組みを理解すること

です。

どのGit GUIを選べばよい?

GitHubを中心に使う

GitHub Desktop

GitHubとの連携が自然で、日常的なGit操作からRebaseやCherry-pickなどまで行えます。

BranchやCommit履歴を細かく見たい

Sourcetree

Gitの履歴を画面上で詳しく確認したい場合に向いています。

Branch構造を視覚的に把握したい

GitKraken Desktop

複雑なBranchやMergeの状態をグラフィカルに把握したい場合に便利です。

Windows Explorerから操作したい

TortoiseGit

Windowsのファイル操作とGit操作を密接に組み合わせたい場合に向いています。

シンプルな画面と細かなGit操作を両立したい

Fork

画面をすっきり保ちながら、多くのGit操作をGUIで扱えます。

C#・.NET開発中にそのまま操作したい

Visual Studio

開発環境から離れずにGitを扱いたい場合に便利です。

まとめ

代表的なGit GUIには、

  • GitHub Desktop
  • Sourcetree
  • GitKraken Desktop
  • TortoiseGit
  • Fork

などがあります。

GitHub DesktopとSourcetreeは特に知名度が高く、GitKraken、TortoiseGit、Forkもそれぞれ長く利用されているGit GUIです。

ただし、正確な世界シェアを示す公式ランキングはありません。

また、登場した年度にもかなり違いがあります。

TortoiseGit       2008年
Sourcetree        2011年には公開済み
GitHub Desktop    2015年
GitKraken Desktop 2015年
Fork              2016年頃

しかし、この年代の違いは性能の順位ではありません。

長く使われているツールには長年の実績があり、新しいツールには新しい設計思想があります。

さらに、

GitHub Desktop = 初心者用

Sourcetree = 中級者用

GitKraken = 上級者用

という分類も適切ではありません。

GitHub Desktopも、Rebase、Cherry-pick、Stash、Reset、Revertなどに対応しています。

Git GUIを選ぶときに重要なのは、

人気度や登場年度だけではなく、自分やチームの開発方法に合っているか

という点です。

そして、どのツールを使う場合でも最終的に重要なのは、

Gitの仕組みと、チーム開発の流れを理解することです。

ツールが変わっても、Gitの基本的な考え方は変わりません。

訪問数 2 回, 今日の訪問数 3回

広告

C#

Posted by hidepon