今回は、ソフトウェア開発で使用されるGitについて説明します。
以前のブログでTerraformについて説明しましたが、このプロジェクトでGitを使用しています。Gitを使用することで、チーム開発が行いやすくなるので、まだ使ったことがない人は、是非使用を検討してみてください。
また、Gitはファイルのバージョン管理も行うことができるので、とても便利なツールです。
今回、このGitについて、概要と基本手順について説明します。
是非最後まで御覧ください!
Gitの概要
Gitとは
Gitとは分散バージョン管理システムです。分散バージョン管理システムとは、複数人で作成したファイルを世代管理できるシステムです。
例えば、チームで同じファイルを編集しているとします。Aさんが編集したファイルを、次にBさんが編集したとします。その後、Bさんが編集した部分が間違っていることが分かり、Aさんが編集した状態に戻したい場合、Gitを使用していれば簡単に戻すことができます。
このように、Gitは複数人で同じファイルを編集作業する際、とても便利です。Gitは、主にソフトウェア開発の現場で使われています。
Gitの特徴
Gitの主な特徴は5つです。
- 各バージョンに、作成日時や作成者、編集内容等の付随情報を記録できる
- 過去のバージョンへ簡単に戻すことができる
- 2つのバージョンの比較ができる
- GitHubにファイルのバックアップを取得できる
- チームで簡単にソフトウェア開発ができる
このようにGitには様々な特徴があります。
Gitのインストール方法
GitをMacにインストールする際は、Homebrewを使用します。Homebrewについては、以前「はじめのTerraform入門講座①」の「Terraformのインストール方法」で説明していますので、ご参照ください。
Homebrewを使用してインストールする方法(Mac)
「ターミナル.app」で下記コマンドを実行します。
brew install git
Gitが正常にインストールされているかは、下記バージョンを表示するコマンドで確認できます。
git --version
正常にインストールされている場合は、下記画面のようにバージョンが表示されます。
インストーラーを使用してインストールする方法(Mac)
Macでインストーラーを使用してGitをインストールする場合、下記URLからダウンロードできます。
・Download for macOS
https://git-scm.com/download/mac
上記URLの「Binary installer」下の「installer」をクリックすると、ダウンロードサイトが開きます。
その後、ダウンロードサイト内、「Download」を選択するとインストーラーイメージがダウンロードされます。
イメージファイルを開いて、「.pkg」形式のインストーラーをダブルクリックしてインストールします。
インストーラーを使用してインストールする方法(Windows)
WindowsでGitをインストールする場合、下記URLよりOSのビット数に合わせてインストーラーをダウンロードします。EXE形式のファイルがダウンロードされるので、実行してインストールします。
・Download for Windows
https://git-scm.com/download/win
GitHubの概要
GitHubとは
GitHubとは、Web上でファイルのバージョン管理ができるサービスです。主にソフトウェアのソースコードを管理することで使用されています。GitHubにソースコードを共有することで、チーム開発時、Aさんは登録機能、Bさんは削除機能等、別々の開発を行うことができます。
GitHubの特徴
GitHubの主な特徴は、下記3つです。
- 分岐して開発可能
- メインコードの上書きは承認制
- 簡単にコード結合
1.分岐して開発可能
GitHubには、「フォーク」という機能があり、1つのプロジェクトを複数人で分岐して開発することができます。分岐した際、他のメンバーが開発している部分は、触らずに開発することができます。誤って、メンバーが開発した部分を消したりするミスを防ぐことができます。
2.オリジナルコードの上書きは承認制
プルリクエストという機能を使用すれば、自分が開発したコードを、メインコードの所有者に上書きリクエストすることができます。上書きは承認制なので、二重チェックすることができます。
3.簡単にコード結合
マージという機能を使用して、プルリクエストされたコードを、メインコードの所有者が自分のコードに結合することができます。
Gitを使用する上で必要な専門用語
- リポジトリ
フォルダやソースコードの状態を保存する場所 - ローカルリポジトリ
ユーザーが利用する、ローカルのリポジトリ - リモートリポジトリ
GitHub等のネットワーク上にあるリポジトリ - コミット
ファイルの追加や変更をリポジトリに保存すること - プッシュ
ファイルをリモートリポジトリにアップロードすること - ブランチ
オリジナルコードから分岐すること - プライベートリポジトリ
特定のメンバーだけと共有するリポジトリ - パブリックリポジトリ
誰にでも公開されているリポジトリ
フォークとブランチの違い
フォークとブランチの違いについて説明します。
フォークは、別名クローンと呼びます。メインコードのクローンを作成することで、フォークしたコードは独立して存在しています。また、ブランチしたコードもクローンします。個人開発する場合によく使用します。
ブランチは、メインコードの分岐です。メインコードと依存関係にあります。ブランチの場合は、他のブランチは含まず、あくまでメインコードを分岐するだけです。チーム開発する場合によく使用します。
このように、フォークはメインコードのクローンから独自で開発する場合に使用し、ブランチはメインコードを分岐してチームで同じソフトウェアを開発するときに使用します。
GitHubのアカウント作成方法
GitHubのアカウント作成は、下記URLより作成できます。英語表示ですが、Google翻訳等を使用すれば日本語表示で作成できます。
・GitHubアカウント作成
https://github.com/signup?ref_cta=Sign+up&ref_loc=header+logged+out&ref_page=%2F&source=header-home
GitHubのサービスは、一部有料もありますが、基本無料で使用できるサービスです。無料で使用できますが、個人が作成できるアカウントは1つまでと利用規約で定められています。
Gitの基本手順(Macの場合)
Gitの基本手順に説明します。
今回はローカルリポジトリのテキストファイルをGitHubのパブリックリポジトリに、アップロードする方法を説明します。
手順は全8ステップです。
- GitHubアカウントの設定
- GitHubにリポジトリ作成
- フォルダとファイルの作成
- Git初期化
- ファイルの追加
- Gitに追加・変更したファイルを登録
- GitHubのリポジトリ情報をローカルに追加
- GitHubのリモートリポジトリに変更を反映
1.GitHubアカウントの設定
GitHubアカウントの設定を「ターミナル.app」から行います。下記2コマンドを1つずつ実行してください。「username」と「mail@example.com」は自分の「ユーザーネーム」と「メールアドレス」に置き換えてください。
git config --global user.name username
git config --global user.email mail@example.com
正常に設定がされているかは、下記コマンドで確認することができます。
git config -l
2.GitHubにリポジトリ作成
GitHubにリポジトリを作成します。自分のアカウントページの左上にある「New」を選択します。
「Repository name」に半角英数記号で任意の名前を入力します。その他の設定は、全て初期設定です。最後に、「Create Repository」をクリックします。
正常にリポジトリが作成されると、Gitの手順が記載されたページが開きます。
3.フォルダとファイルの作成
MacのホームフォルダにGit用フォルダとファイルを作成します。今回はコマンドで作成しますが、GUIで作成しても構いません。
下記3コマンドを1つずつ実行します。
mkdir ~/testgit
cd ~/testgit
touch text.txt
4.Gitの初期化
Gitの初期化を行います。ターミナルで下記コマンドを実行します。
git init
5.ファイルの追加
Gitシステムにファイルを追加します。今回は、作成した「text.txt」を追加します。下記コマンドを実行します。
git add text.txt
6.Gitに追加・変更したファイルを登録
Gitに追加・変更したファイルを登録します。下記コマンドを実行します。「”(ダブルクォーテーション)」の間に変更内容等を追記し、他のメンバーでも何を行ったかわかるようにコメントを入力します。ダブルクォーテーションの間は、日本語(全角)が使用できます。
git commit -m "text.txtを追加"
7.GitHubのリポジトリ情報をローカルに追加
GitHubで作成したリポジトリ情報をローカルに追加します。下記コマンドを実行します。なお、「username」と「testgit」の部分は、GitHubにリポジトリを作成した時の「ユーザーネーム」と「リポジトリ名」に置き換えてください。
git remote add origin https://github.com/username/testgit.git
8.GitHubのリモートリポジトリに変更を反映
GitHubのリモートリポジトリに変更を反映します。下記2つのコマンドを1つずつ実行してください。
最初のコマンドは、メインブランチを選択しています。次のコマンドでローカルリポジトリのファイルをリモートリポジトリのメインブランチにアップロードしています。
git branch -M main
git push -u origin main
最後に、GitHubに正常にファイルが追加されたか確認します。GitHubに作成したリポジトリを選択します。
このように、Gitを使用することでローカルで作業した内容をGitHubを使用してバージョン管理することができます。
まとめ
今回は、下記3点について説明しました。
- Gitの概要
- GitHubの概要
- Gitの基本手順(Macの場合)
Gitを使用すると、ソースコードを共有でき、また複数人で共有することができます。今回説明した基本手順は、一般公開しているリポジトリですが、実際ソフトウェア開発する際は、プライベートリポジトリでブランチを分けて作成します。
その方法については、また別のブログでご紹介します。
これからも、Macのシステムエンジニアとして、日々、習得した知識や経験を発信していきますので、是非、ブックマーク登録してくれると嬉しいです!
それでは、次回のブログで!