ひとりでのアプリ開発 - fineの備忘録 -

ひとりでアプリ開発をするなかで起こったことや学んだことを書き溜めていきます

Git・GitHub - Git とは、GitHub とは

初めに

 ファイルのバージョン管理やチームでの作業のためのシステムとして Git、GitHub があります。本記事では、Git やGitHub にできることやインストール、登録の仕方などについてまとめます。

Git

Git とは

 gitは、プログラムのソースコードなどの変更履歴を記録・追跡するための分散型バージョン管理システムである。Linuxカーネルソースコード管理に用いるためにリーナス・トーバルズによって開発され、それ以降ほかの多くのプロジェクトで採用されている。

 gitでは、各ユーザのワーキングディレクトリに、全履歴を含んだリポジトリの完全な複製が作られる。したがって、ネットワークにアクセスできないなどの理由で中心リポジトリにアクセスできない環境でも、履歴の調査や変更の記録といったほとんどの作業を行うことができる。これが「分散型」と呼ばれる理由である。
Wikipedia

 つまり、Git を使うことでファイルの管理やチームでの共同作業などで起こる問題を解消できるようになります。

 Git を使うことで以下のようなことが可能になります。

  • ファイルの変更履歴が管理できる
  • 過去のファイルに戻せる
  • なんでも管理できる
  • チームで共有できる
リポジトリ

 各種履歴を「リポジトリー」で管理します。Git は分散型であり、複数のユーザーで共有する「リモートリポジトリー」とそれぞれのユーザ一が利用するために、自分のローカルマシン上に配置する「ローカルリポジトリー」の2種類のリポジトリーがあります。

 各ユーザーは共有リポジトリーからローカルリポジトリーにファイルをコピーしたり、ローカルリポジトリーで新規作成したりすることでファイルを編集します。

 各リポジトリーに対して、変更を反映させる操作として「Commit(コミット)」と「Push(プッシュ)」があります。

操作名 説明
Commit(コミット) ローカルリポジトリに変更を反映すること
Push(プッシュ) リモートリポジトリに変更を反映すること

 また、他者がリモートリポジトリーを更新した場合など、リモートリポジトリーの履歴をローカルリポジトリーに取得する操作として「Pull(プル)」があります。

操作名 説明
Pull(プル) リモートリポジトリの履歴を取得することができます。

ブランチ

 ブランチとは、履歴の流れを分岐して記録していくためのものです。分岐したブランチは他のブランチの影響を受けないため、同じリポジトリ中で複数の変更を同時に進めていくことができます。

 チームのメンバーは、他のメンバーの作業の影響を受けないように、メインのブランチから自分の作業専用のブランチを作成します。 そして作業の終わったメンバーは、メインのブランチに自分のブランチの変更を取り込んでいきます。このようにすることで、他のメンバーの作業による影響を受けることなく、自分の作業に取り込むことができます。また、作業単位で履歴を残すことで、問題が発生した場合に原因となる変更箇所の調査や対策を行うことが容易になります。

 分岐したブランチは他のブランチと合流(マージ)することで、一つのブランチにまとめ直すことが出来ます。

Git を使う際の基本的な流れ

 Git を使う際の基本的な流れは次のようになります。

  1. リモートリポジトリーをローカルリポジトリーに複製(クローン)
  2. 作業用のブランチを作る
  3. ファイルを編集
  4. 編集したものを記録
  5. コミットし、ローカルリポジトリーに反映させる
  6. プッシュし、リモートリポジトリに反映
  7. 確認後、作業用ブランチを合流(マージ)

 リモートリポジトリーに更新があった場合など、必要があれば Pull を行い、ローカルリポジトリーも更新しておきます。

使い方の例

 Git はコマンドラインツールのため、次のようなコマンドを書いて操作をしていきます。

リポジトリの作成)

# プロジェクトディレクトリを作成
mkdir my_project
cd my_project

# Gitリポジトリを初期化
git init

(ファイルの追加)

# ファイルを作成または編集
echo "Hello, World!" > hello.txt

# ファイルのステージング
git add hello.txt

(コミット)

# コミットの作成
git commit -m "Initial commit"

※Git をコマンドラインではなく GUI で操作できるようにするためのツールもあります。Git GUI などがその例です。

Git のダウンロード、インストール

 下のリンク先からインストーラーがダウンロードできます。

git-scm.com

 インストールができたら、Git Bashを起動します。Git Bashとは、Windows上でGitのコマンドを操作するためのツールです。

 Git Bashを起動後、以下のコマンドを入力してGitのバージョン情報が表示されることを確認してください。

$ git --version


GitHub とは

 GitHub(ギットハブ)とは、Git の仕組みを利用して、世界中の人々が自分の作品(プログラムコードやデザインデータなど)を保存、公開できるようにしたウェブサービスの名称です。

 GitHubは、GitHub社によって運営されており、個人・企業問わず無料で利用が可能です。

 GitHub に作成されたリポジトリ(保存庫のようなもの)は、パブリック(公開)とプライベート(非公開)を選択できます。また、各プロジェクトにwiki(メモ書き)やタスク管理ツールなど、コラボレーションのための機能も充実しているのが特徴です。

GitHub への登録

 GitHub Japan のウェブサイトから登録できます。

github.co.jp

(登録手順)

  1. GitHub Japan のウェブサイトを開く
  2. GitHub に登録する」ボタンをクリックする
  3. ユーザー名、メールアドレス、パスワードを入力する
  4. 次の画面が表示されるので、メールに送られたコードを入力する

  5. 登録完了し、ホーム画面が開く