Gitの基本①　Gitのインストール方法

本記事ではGitのインストール方法についてまとめていきます。
環境は下記のようになります。

**環境**
・Windows 11

## Git
**Git**
…ソースコードを管理するための分散型のバージョン管理システムです。例えば、ソースコードの更新や更新履歴の保持などの機能を持ち、複数人でアプリ・システムを開発するのにも向いています。

**分散型**
…各開発者が自分のローカル環境にリポジトリの完全なコピーを持ち、オフラインでも作業ができる仕組みです。
　ローカル環境での作業が終わったら、リモート環境にプッシュ・マージ等を行います。また、リモート環境

**リポジトリ**
…ファイルを管理するデータベースのこと。

**ローカルリポジトリ**
…各開発担当者が自分のPC環境（ローカル環境）で持つリポジトリ

**リモートリポジトリ**
…すべての開発担当者でファイルやソースコードを編集・共有するリポジトリです。

## Gitのインストール
まずはじめにGitのインストールを行います。
既にGitがインストールされている人は飛ばしていただいても大丈夫です。

gitの公式サイトを開き、Downloadボタンを押下します。
[git公式サイト](https://gitforwindows.org/)

![codespaces_1.gif](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3906686/10368767-f34f-3ec6-29e8-2830e27f823f.gif)


ファイルサーバを開き、ダウンロードフォルダにGitのインストーラがあることを確認します。
右クリックメニューの「管理者として実行」をクリックしてインストーラを実行します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3906686/53c9e090-4ed8-5393-73ae-f2141b573d5c.png)


Gitのインストーラの画面が表示されます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3906686/1677cb44-3397-7d54-3ac1-0ca05a392c53.png)

Gitをインストールするフォルダの場所を設定し、Nextボタンを押下します。
（デフォルトだと「C:\Program Files\Git」の中に作成されます。）
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3906686/a84f46b3-b548-c4b7-1a7e-0caf1f6a4cf6.png)

-----------------------------------------------------

コンポーネントの選択ですが、これは特にこだわりが無い場合、デフォルトのままNextボタンを押下します。
（内容的にはgitのアイコンをデスクトップに表示するか等のオプションの選択です。）
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3906686/26aae32a-d2ba-db9d-5031-afe864912df4.png)

スタートメニューに表示する名前を決めます。「Don't create a Start Menu Folder」のチェックは入れないでおきましょう。
名前までしっかりカスタムしたい等の理由が無ければデフォルトのままNextボタンを押下します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3906686/56f79120-84b2-d947-5c58-13e4a0ece505.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3906686/b1dfe918-10d8-ebba-0586-43d165a6d032.png)

-----------------------------------------------------

Gitの操作中にテキストエディタを使用する場面が発生するため、テキストエディタの設定が必要です。
（git commitやgit rebase実行時にコミットコメント等を編集するためにエディタが起動されるという過程が今後出てきます。）
デフォルトで「Vim」が設定されています。こちらもとくにこだわりが無い場合はVimにしておきましょう。
ちなみに後からでも変更が可能です。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3906686/c68cf6fd-9104-3823-18ef-2a36525aeeca.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3906686/60e4bf1b-6266-8880-d00b-41b718535218.png)

**Vim**
…テキストエディタの１つ。主にコマンドラインインターフェースで操作され、キーボードだけで効率的にテキスト編集ができます。
主に下記のモードを使用します。
・ノーマルモード：カーソルの移動やテキストの削除などの基本操作を行います。
・インサートモード：テキストの入力を行います。
・ビジュアルモード：テキストの選択を行います。
・コマンドモード：保存や終了などのコマンドを実行します。

-----------------------------------------------------

新規リポジトリ作成時のデフォルトブランチを選びます。

上を選択すると「master」という名前のブランチがデフォルトで作成されます。
下を選択すると自分の好きなブランチ名を設定することができます。
よく「main」「development」等が設定されます。今回は下を選択し、「main」というブランチを作成しましょう。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3906686/277c4722-38d1-28b6-5eb5-5ec0bf330101.png)

-----------------------------------------------------


パスの設定を行います。こちらも真ん中の選択肢が選ばれているデフォルトのままNextボタンを押下します。
選択肢の内容は以下です。
・Git BashからのみGitを使用
…このオプションを選択すると、GitがGit Bashからのみ使用可能となります。他のコマンドラインツールやシステム全体ではGitが利用できません。(Git BashはGit専用のターミナルのことです。)

・コマンドライン、サードパーティソフトウェアからGitを使用
…このオプションを選択すると、Gitがシステム全体で利用できるようになります。コマンドプロンプトやPowerShell、他のソフトウェアからもGitコマンドを実行できます。

・コマンドプロンプトからGit及びオプションのUnixツールを使用
　…このオプションを選択するとGitに加えて一部のUnixツール（lsやgrepなど）もコマンドプロンプトから使用できるようになります。Unix環境に慣れている方向け。
 
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3906686/7a344bb9-2416-440f-3949-137180517713.png)


-----------------------------------------------------
OpenSSHクライアントの設定を行います。今回はデフォルトとなっている上の選択肢を選んでNextボタンを押下します。
選択肢の内容は以下です。

・OpenSSHクライアントをインストールする。
…このオプションを選択すると、OpenSSHクライアントがインストールされ、SSH接続が可能になります。

・OpenSSHサーバをインストールする。
…このオプションを選択すると、OpenSSHサーバがインストールされ、他のコンピュータからSSH接続を受け入れることができるようになります。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3906686/38062c54-7a8c-30cd-55a9-a55ab0840caf.png)


-----------------------------------------------------

次にOpenSSLライブラリについての設定です。これもデフォルトのままNextボタンを押下します。

選択肢の内容は以下です。
・OpenSSHライブラリを使用する。
…このオプションを選択すると、GitはOpenSSHライブラリを使用してSSL/TLS通信を行います。OpenSSHはセキュアな通信を確保するための標準的なライブラリです。

・WindowsのネイティブSecure Channelライブラリを使用する。
…このオプションを選択すると、GitはWindowsのSecure Channelライブラリを使用してSSL/TLS通信を行います。これは、Windowsに組み込まれているセキュリティライブラリです。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3906686/38f25a3e-4c23-deb7-fc66-55c632cf92a8.png)

----------------------------------------------------------

改行コードの自動変換の設定です。不要な変換が行われるのを防ぐため、こちらは一番下の選択肢を設定してNextボタンを押下します。

選択肢の内容は以下です。

・チェックアウト時にWindowsスタイル（LF⇒CRLF）、コミット時にUnixスタイル（CRLF⇒LF）の改行コードを使用するようにします。

・チェックアウト時はそのまま、コミット時にUnixスタイルの(LF)の改行コードを使用するようにします。

・チェックアウト時もコミット時もそのままの改行コードを使用するようにします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3906686/d1818af5-23f6-be20-29d9-1e370d4390ae.png)


----------------------------------------------------------
ターミナルエミュレータの選択をします。こちらもデフォルトで上の選択肢が選択されたままNextボタンを押下します。

選択肢の内容は以下です。
・MinTTY（MSYS2のデフォルトターミナル）を使用します。
…MinTTYは柔軟でカスタマイズ可能なターミナルエミュレータです。

・Windowsのデフォルトコンソールウィンドウを使用します。
…PythonやNode.jsなどの対話型プログラムを実行する際に便利ですが、カスタマイズの自由度は低くなります。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3906686/e9fab884-726c-308c-6a04-360bd2cb8a97.png)

----------------------------------------------------

git pullについての設定を行います。今回はデフォルトの一番上の選択肢を選んでNextボタンをクリックします。
・ファストフォワードまたはマージ
…このオプションを選択すると、git pullは可能な場合にファストフォワードを行います。それが不可能な場合はマージを行います。（ファストフォワード：リモートブランチの変更がローカルブランチに直接適用できる場合に行われる）

・リベース
 …このオプションを選択すると、git pullはリモートの変更をフェッチし、現在のブランチの先頭にリベースします。
 
・ファストフォワードのみ
…このオプションを選択すると、git pullはリモートの変更が現在のブランチの先頭に直接適用できる場合にのみ更新を行います。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3906686/b11674ea-8507-a009-39f7-a0b2327837ac.png)

------------------------------------------------

Credential Managerをインストールするかどうかの選択です。
こちらもデフォルトで、インストールする選択肢のままNextボタンを押下します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3906686/a47ff983-bf36-b599-5c82-b4cab17888c5.png)

------------------------------------------------


ファイルキャッシュについての設定を行います。
こちらもデフォルトのままで、Nextボタンを押下します。
選択肢の内容は以下です。

・ファイルシステムキャッシュを有効にします。
…このオプションを選択すると、Gitはファイルシステムのデータをメモリにキャッシュします。これにより、git statusなどのコマンドの応答速度がはやくなります。

・シンボリックリンクを有効にします。
…このオプションを選択すると、Gitはシンボリックリンクをサポートします。
（シンボリックリンク：有効にすることで、リポジトリ内のリンクが正しく機能し、他システムと互換性を保つことができます。）
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3906686/b6ebf565-ae66-b2c8-681e-06d7b7f21b38.png)


インストールが完了しました。
そのままFinishボタンを押下します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3906686/94ebcdff-27d3-8f3d-28f1-064c36aa6368.png)


最後にgitがインストールできたかどうかwindowsのコマンドプロンプトで確認してみましょう。
git のバージョンが表示されたらインストール完了です。
次の記事ではGithubと連携できるように設定を行っていきます。

```winbatch:cmd
C:\Users\USER>git --version
git version 2.47.1.windows.1
```