GitHub Desktopについてまとめています。
GitHub Desktopとは
参考)GitHub Desktop | Simple collaboration from your desktop
GitHub Desktopは、パソコンからGitHubと連携してWindows(64ビット)やmacOSから操作を行うことができるツールです。
リポジトリの追加やクローン作成、ブランチの変更やコミットの管理を行うことができます。
GitHubまたはGitHubEnterprise(商用目的のプライベートリポジトリ)のリモートリポジトリの操作や、ローカルリポジトリとGitHubの同期などをおこなうことが可能です。
コマンドラインのgitコマンドと比べて、機能が最小限に絞り込まれていて、git初心者にもとっつきやすいというメリットがあります。
【関連記事】
▶GUIで簡単操作!GitHub Desktopを解説します
GitHub Desktopのインストール(Windows版)
実際に、Windows版のGitHub Desktopをインストールしてみましょう。インストーラーを起動すると、Github.comまたはGitHub Enterprise(商用のプライベートリポジトリ)のいずれかにサインインします。GitHubにアカウントがない場合は、Create your free accountをクリックしてアカウントを新規作成します。
ここでは、Sing in to GitHub.comをクリックして、GitHub.comにサインインします。
ブラウザが起動し、GitHubへのログイン画面になります。ログイン後、Authorize GitHub Desktopという画面になりGitHub Desktopと連携するかどうかを確認する画面になります。Authorize desktopをクリックして、連携を承認します。
You are being redirected to the authorized application.と表示され、GitHub Desktopのインストーラに戻り、Configure Gitの画面になります。GitHubアカウントの名前とメールアドレスをそのまま使うか、手動で入力するかを選びます。ここでは、Use my GitHub account name and email addressを選び、GitHubのアカウント名とメールアドレスを選択後、Finishをクリックします。
Let’s get started!と表示され、リポジトリのクローンや新規リポジトリの作成ができるようになります。ここでは、Clone a repository from internet(インターネットからリポジトリをクローン)をクリック後、Clone a repositoryの画面でURLをクリック、Repository URLの欄に「https://github.com/leachim6/hello-world」と入力します。
このリポジトリは、792種類もの言語で「Hello world」を表示するソースコードを収集しています。(2021年6月時点)
GitHub Desktopで、Repository→Show in Explorerを選択します。
エクスプローラーが開き、クローンされたソースコードが表示されます。
cフォルダから、c++のHello worldコードを開いてみましょう。
#include <iostream> int main() { std::cout << "Hello World" << std::endl; }
Hello Worldコードが確認できました。
GitHub Desktopの機能
GitHub Desktopの機能はシンプルです。公式サイトによると、開発ワークフローに初心者Gitユーザが参加しやすいように機能を大幅に簡略化するという方針があるようです。
GitHubデスクトップは、初心者とコラボレーションチームのワークフローを優先します。
開発者がアイデアを実現するための包括的で親しみやすい方法を作成したいと考えています。GitHubデスクトップは、コマンドラインでGitを操作する際の威圧感を軽減する上で重要であると考えています。すべての経験レベルのユーザーは引き続きGitHubデスクトップの機能の恩恵を受けますが、上級Gitユーザー向けのワークフローと初心者Gitユーザー向けのワークフローのどちらかを選択する必要がある場合は、初心者を優先します。
引用)desktop/what-is-desktop.md at development · desktop/desktop
ネットでの口コミによると、「フェッチ・プル・プッシュが1つのボタンに集約されている」「ツリー形状のビジュアルがない」「ブランチ以外にチェックアウトできない」という声があるものの、ここまで簡略化されているために、今まで複雑で挫折していたユーザの「ツリーを意識せず、ただブランチを作って、コミットして、プッシュするだけのような感じで、ようやく使える感じになりました」というコメントもありました。
参考)git – GitHub Desktopは使える?機能不足? – スタック・オーバーフロー
GitHub Desktopでブランチを作る
実際に開発メンバーがGitHub Desktopを使うイメージを見ていきましょう。
ソースコードを修正するユーザがまず最初にやることは「ブランチを作る」ことです。対象のソースコード以外が変更されないよう、全ソースコピーをローカルリポジトリにコピーして修正用の環境を作るんですね。
GitHub Desktopでは、Branch→New branchでブランチを作ることができます。
Create a branchのダイアログが表示されるのでブランチ名を入力してCreate branchをクリックします。ブランチは「本番用」「開発環境用」と大きめのブランチを作って複数人で作業する方法と、ソース修正作業ごとに細かくブランチを作る方法があるようです。
また、ローカルで細かくコミットしたい人の場合、リモートリポジトリにコミットするためのブランチと自分用の作業ブランチを作り、マージ直前に細かいコミットをまとめるという手法もあるようです。
関連)Pull Requestに含めるコミットは意味のある単位にまとめよ!|Lexues|note
今回はソース修正作業ごとに1つブランチを作る想定で解説しています。
GitHub Desktopでコミットする
ソースコードを修正したら、Fetch originのリサイクルマークをクリックします。
Changesの画面にて、修正をおこなったソースコードとオリジナルコードとの差分が表示されるので、Commit to ブランチ名と書かれたボタンをクリックします。このとき、コミットのタイトルと詳細を入力する必要があります。
GitHub Desktopでプルリクエストする
ブランチを作ったあとは、他の開発者の修正作業と干渉し合うことなくコード修正・追加や単体テストが可能です。単体テストが終わったら、Branch→Create pull requestでレビュアーにレビュー依頼を送ります。
Github Desktopのまとめ
- GitHub Desktopはパソコン上で使うことが可能な、GitHubユーティリティ
- git初心者でも扱いやすいよう、機能は最小限に絞り込まれている
- リポジトリのクローン、ブランチの作成、コミット、リモートリポジトリとの同期、プルリクエストが可能