世の中にはたくさん類似のGitクラアントツールがあり、あなたもどのクライアントツールが良いか迷った経験はないでしょうか?
本記事を一通りご覧いただければGitHub Deaktopを使用せずとも、操作感や特徴をイメージしていただける記事となっています。
さぁ、GitHub Desktopを使ってより良いGitライフを過ごしましょう!
もしGitやGitHubをあまり使ったことがない方は、まず下記の記事を読んでから本記事を読んでみてください。
GitHub Desktopの特徴
GitHub公式ツール
ツールの名前にもなっているとおり、GitHubの公式ツールです。
GitHub公式ツールだけあって、GitHubと連動した操作が可能な点が特徴です。
また、GitHub Flowに基づく開発を想定して作られているところもポイントです。
GitHubアカウントと連動しているため、GitHub上のプルリクエストもツールから可能です。
公式サイトはこちら
windows、mac 両対応
OSに依存せずに同じアプリを使えるところも非常に嬉しい所です。
以前はwindows版はGitHub for windows、macはGitHub for macと分かれていましたが、これらがGitHub Desktopに統合された形です。
windows版とmac版で若干の見た目の違いはあるものの、レイアウトや機能はほとんど同じです。
またWindows版ではGitHub Desktopのインストール時に、コマンドライン版Git(GitHub Shell)も一緒に導入できるため、このツールを入れておけばGitを使用できるようになります。
windowsユーザにも非常に優しい作りとなっています。
簡単でシンプル
コマンドラインでの操作に比べて機能が絞られていますが、非常にシンプルな操作性となっています。
コマンドを抽象化し、Gitコマンドを知らなくても簡単に使えます。
余分な操作をユーザにさせず、手間を減らそうという気持ちが伝わってくる操作感です。
ただし普段からGitコマンドに慣れている人にとっては、用語が独特な点と操作手順が若干異なっているところには注意が必要です。
それでは実際の操作画面を見ていきましょう。
【徹底解説】GitHub Desktopの特徴と操作感
この章ではGitHub Desktopの特徴を説明しながら、ツールの便利ポイントをピックアップして解説していきます。
GitHub Desktopは非常にシンプルで1操作で複数のGitコマンドを実行してくれます。
情報を最低限に絞り、面倒くさい操作から開放される点がこのツールの人気なところですので、是非便利さを実感してください。
『見やすい』現在操作中のブランチの状態
GitHub Desktopでは作業中のブランチと派生元のブランチしか状態を表示しません。
一度にたくさんのブランチが存在するプロジェクトなどでは、作業中のブランチにフォーカスしてくれる点が非常に助かります。
特にGitHub Flowに基づく開発では開発用のブランチから新規ブランチを作成して作業をしていきますので、派生元ブランチと作業中のブランチだけ見えれば事足ります。
余計なブランチの情報を表示しない心遣いが、GitHub Desktopの利便性の一つです。
『最速のブランチ切り替え』stash不要
GitHub Desktopではブランチを切り替える際、自動でstashとcheck outをしてくれます。
check out先のブランチに変更中のファイルが競合してしまい、ブランチを切り替えれないという状況でもワンクリックでブランチを切り替えれます。
また一度stashしたファイルは、そのブランチをcheck outした際に自動で元に戻してくれます。
ここは私が最も強調したいGitHub Desktopを使用する際の便利なポイントです。
『リモートブランチへのpush』PublishとSync
GitHub Desktopではローカルリポジトリからリモートリポジトリに初めて上げる際は『Publish』、
続いてそのブランチをローカルリポジトリとリモートリポジトリで同期する際の操作を『Sync』と呼びます。
GitHub Desktop ならではの用語ですが、通常のGitではローカルリポジトリで作成したブランチをpushする行為がこれに相当します。
ローカルのブランチを『Publish-公開』し、続いて変更した内容を『Sync-同期』しながら開発を進める、という感覚的な言葉になっています。
少々イメージが付きにくいと思うので通常のGitの用語と置き換えながら、画像付きで解説していきます。
1.ローカルリポジトリにて新たにブランチを作成する。(Create new Branch)
派生元のブランチを選び、ブランチ名を入力して『Create Branch』します。
2.作成したローカルリポジトリのブランチをリモートリポジトリにpushする。(Publish)
『Publish』ボタンを押すと、リモートリポジトリへ作業中のブランチがpushされます。
このようにローカルで作成したブランチをリモートリポジトリーへ初めてpushする際はGitHub Desktopでは『Publish』と呼びますが、
より感覚的な用語になっており、Gitに馴染みのない方でもイメージしやすいですね。
3.ローカルリポジトリに変更をコミットする。(Commit)
コミット画面については上図で全てなのですが、ファイルを選択してコメントを記載して完了です。
git add <file pattern> のようにインデックスにファイルを登録する操作がありません。
こちらもGitHub Desktopが自動で実行してくれるのです。
コマンドラインから実行するのに比べると、ファイルを選択して、そのままコミットできるのは嬉しい所です。
4.リモートリポジトリへ変更をpushする。(Sync)
一度Publishをしており、ローカルリポジトリとリモートリポジトリと紐付いたブランチをpushする際はGitHub Desktopでは『Sync』となります。
sync(同期)という単語が感覚的です。
以上が『Publish』と『Sync』という考え方です。
『リモートリポジトリからのpull』Sync
pushの操作でも『Sync』という操作が出てきましたが、リモートリポジトリをローカルリポジトリへ取り込む際にも『Sync』を使用します。
GitHub Desktopではローカルからリモートへ変更を公開する際も『Sync-同期』、リモートからローカルへ変更を取り込む際も『Sync-同期』という考え方です。
このあたりもGitに馴染みのない方には単純でわかりやすいのではないでしょうか?
リモートとローカルを一致させる際はとりあえず『Sync-同期』にすれば良いのです。
Gitでいうfetch +marge やpullを兼ね備えた機能ということになります。
リモートリポジトリからの取り込みは『Sync』ボタンを押す。これだけです。
pullとpush全てをボタン一つで実行可能な『Sync』ボタンはGitHub Desktopの一押し機能です。
デザイナーとエンジニアが同一ブランチ上で作業する場合にも『Sync』を押すだけで、状態がお互いに同期できますので、とても便利です。
『Pull Request』をツール上から作成できる
GitHub Desktopではツール上でPull Requestを生成できます。
こちらも画像つきで操作を見ていきましょう。
このようにローカルからPull Requestをボタン一つで作成できます。
さらに一度作成したPull Requestへもすぐにアクセスできます。
上図の赤枠のボタンを押すだけでブラウザが立ち上がり、GitHub上の該当のPull Requestへアクセスできます。
【要注意】GitHub Desktopでできないこと
さて、ここまでGitHub Desktopの特徴を操作画面と併せてご説明してきました。
かなりシンプルな操作性で利便性が伝わったのではないでしょうか?
次はGitHub Desktopでできないことをお伝えしていきます。
細かいGit操作ができない
GitHub Desktopではrebase、reset、cherry pickといった細かいGit操作はできません。
もし必要な場合はコマンドラインツールや他のツールを使用して実施することになります。
この点がツールを使用する上での最大の注意ポイントです。
空コミットができない
GitHub Desktopでは空のコミットが作成できません。
そのため、作業開始時にWIPなPull Requestを作成するという運用をしている場合は少々使いにくいかもしれません。
他ツールとの併用がオススメ
注意ポイントとして細かい操作ができないことを挙げましたが、私の経験上あまり特殊な操作は頻繁には発生しません。
前章で解説した操作で事足りる場合がほとんどではないでしょうか。
細かい操作ができないデメリットを上回る見やすさと通常オペレーションの簡便さを提供してくれていますので、普段はGitHub Desktopを使用し、特殊な操作をする時にだけ他ツールを使うという方法がおすすめです。
また、特殊な操作に限ってはコマンドラインを使用してやってしまうという方法もおすすめです。
特にプログラミング初学者の方で、まだGitに慣れていない方は、敢えてコマンドラインから実行してみるのも勉強のためには良いのではないでしょうか。
まとめ
ここまでGitHub Desktopの特徴をご説明してきましたがいかがでしょうか?
シンプルな操作をする場合は他のツールに比べて操作が非常に簡便です。
特に『Sync』機能とブランチの切り替え時に自動でstashしてくれる機能が本当に優秀です。
こんな方にオススメ
出典:写真AC
GitHub Desktopの簡便さを活かせるプロジェクトの方には特にオススメです。
・単一機能、単一ブランチでデプロイする開発フローで開発する方
余計なブランチが表示されないため、非常に見やすいです。
GitHub Flowに基づいた開発を進めるプロジェクトには適しています。
一方、複数のブランチをデプロイするような開発フローの場合には一度にブランチを閲覧できないので、少々使いにくいかもしれません。
・デザイナーとエンジニアで共同開発している方
デザイナーと作業をしているなど、同一ブランチを複数人で機能開発を進める際にはお互いに同期を取りながら進めることになるかと思います。
この際には『Sync』ボタン一つでpushとpullができるため、同期が簡単です。
ボタン一つでお互いに同期を取りながら進めることができます。
・GitHub を使用して開発を進めるプロジェクト
Pull Requestをツール上で簡単にでき、GitHub のWebサイトへもボタン一つで飛べます。
GitHub公式ツールだけあって、GitHubとの親和性が非常に高いです。
最後に
いかがでしたでしょうか?この記事を通してGitHub Desktopの操作感や特徴をイメージしていただけましたか?
数あるGitクライアントツールの中でのルール選びの一助になれば幸いです。
効率の良いツールを使ってより快適なGitライフを送っていきましょう!
さらに詳しくGitについて知りたい方は、こちらの関連記事もご参考ください。
はじめての転職、何から始めればいいか分からないなら
「そろそろ転職したいけれど、失敗はしたくない……」そんな方へ、テックキャンプでは読むだけでIT転職が有利になる限定資料を無料プレゼント中!
例えばこのような疑問はありませんか。
・未経験OKの求人へ応募するのは危ない?
・IT業界転職における“35歳限界説”は本当?
・手に職をつけて収入を安定させられる職種は?
資料では、転職でよくある疑問について丁寧に解説します。IT業界だけでなく、転職を考えている全ての方におすすめです。
「自分がIT業界に向いているかどうか」など、IT転職に興味がある方は無料カウンセリングにもお気軽にお申し込みください。