Gitインストールした話(windows10)

# 1 はじめに
職場のバージョン管理ツールはSub VersioNで、Gitってなんぞや状態だったので一旦インストールしたって話です。
同じ環境の人の一助になれば幸い。


＊私はまだ1年目の新人エンジニアですので間違い等ありましたらご指摘いただけますと幸いです。

# 2 インストール手順

### インストーラのダウンロード
下記リンクからインストーラをダウンロードしてくる。
ダウンロードできたらexeファイルを実行してください。
<img width=500 alt="instoller.png" src=https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/916003/d7139a81-5359-70e5-7389-c2bb1f9ecd12.png>


### ライセンスの確認

いつものやつです。確認したらNext
<img width=500 alt="setup_1.png" src=https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/916003/003c74cd-f567-edeb-d69a-9caad0e998f7.png>

### コンポーネントの選択

インストールするコンポーネントを選択します。
特にこだわりがなければデフォルトで。

・Additioncal icons:ディスクトップにアイコン追加
・Windows Explorer integration:エクスプローラーで右クリック時に表示されるメニューを追加
・GitLFS:GitLFSのサポート有無
・Associate .git* configuration.....editor:.gitで始まるファイルをデフォルトエディタに関連付け
・Associate .sh files to be run with Bash:*.shファイルをBashで実行できるように関連付け
・Use a TrueType font in all console windows:全てのコンソールウインドウにTrueTypeフォント適用
・Check daily for Git Windows updates:Git for Windowsのアップデートを毎日確認

<img width=500 alt="setup_2.png" src=https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/916003/407b81b1-dc52-be47-bdd1-4c7f321b325a.png>

*追記:"Use a TrueType font in all console windows"は文字化けの原因になるので選択しないほうがいいらしい


### 編集に使用するエディタの設定
お好みのエディタを選択してください。私はVS Codeにしてみました。
<img width=500 alt="setup_3.png" src=https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/916003/ae3e7683-5ca7-87d8-1a20-63eec68ca74b.png>




### Git init で作成されるブランチ名の設定
お好みで設定してください。
上：デフォルトが "master"
下：master以外に任意に設定。
私は、下を選択し"main"をデフォルトに設定しました。
<img width=500 alt="setup_4.png" src=https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/916003/81b0cff3-528a-bfd7-2257-72a8c29b7a1f.png>


### 環境変数のpathに何を追加するか設定

ここに関して、よくわからなかったのですが、一番上を選択するとpathに何も設定しないみたいですので一番上にしました。
参考にした記事によってバラバラでしたのでとりあえず一番害のなさそうなものを選択しました。
<img width=500 alt="setup_5.png" src=https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/916003/a513c518-686e-1c3d-02e5-e6629870d420.png>



### gitでHTTPSを使う際の設定
フェッチ/プッシュ/プルするときにOpenSSLが持つルート証明書を使用するか、WindowsのSecure Channelのルート証明書を使用するか設定するそうです。
参考にさせていただいた下記サイトから抜粋します。ほとんどの方は前者で問題ないでしょう。

[私家版 Git for windowsのインストール手順](https://opcdiary.net/technical/programming/%E7%A7%81%E5%AE%B6%E7%89%88-git-for-windows%E3%81%AE%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%E6%89%8B%E9%A0%86/)

>「GitHubやBitBacket等のレポジトリサービスを利用する場合や、Linuxベースのローカルサーバー上のGitのリモートリポジトリーに接続する場合にはOpenSSLで基本的に問題ありません。企業等でTeam Foundation ServerやWindowsサーバー/IISでGitリポジトリサーバーを運用していて、そこへのアクセスにカスタムの認証局に発行された証明書が必要な場合、特にその証明書がADで配布されている場合には必ず後者を選択します。」

<img width=500 alt="setup_6.png" src=https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/916003/f578ecc9-c499-2954-17df-88bcff5192ba.png>



### 改行コードの設定
改行コードの設定をします。

上から順に
・チェックアウト時はCRLF、コミット時はLFに変換
・コミット時はLFに変換
・何もしない

記事によて選択が違っていましたが、改行コードの自動変換で変なエラーやバグが起こると嫌なので私は一番下にしました。改行コードはエディタで面倒見ればいいと私は思います。

<img width=500 alt="setup_7.png" src=https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/916003/f6e81402-d2ba-967d-49b3-d3aad5e9221a.png>


### Git Bashで使用するターミナルエミュレータの設定
特にこだわりがない場合はデフォルトで問題なさそうです。
Windowsの標準コンソールが気に入っている方は後者を選択すればいいと思います。

<img width=500 alt="setup_8.png" src=https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/916003/34749afe-c111-1c7b-36c8-ab3b641b2332.png>


### git pull の動作設定

デフォルトで問題なさそうです。
Rebaseを標準としたい場合にはRebaseを、
fast-forwardのみをデフォルトにしたい場合にはOnly ever fast-forwardを選択するみたいです。

<img width=500 alt="setup_9.png" src=https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/916003/2bf8cef9-9996-02f5-8db9-86c02ba48df6.png>


### Git credential managerのセットアップを選択
デフォルトで問題なさそうです。

ただし、旧バージョンが必要な方は2番目を選択してください。
権限管理機能が必要ない場合は3番目を選択してください。

<img width=500 alt="setup_10.png" src=https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/916003/4d7db108-bcf4-7a38-07c5-b5f14654d84f.png>


### 拡張機能の選択
各機能について理解できていませんが、入れても問題なさそうだったので両方選択しました。

下記のサイトからの引用です。
[私家版 Git for windowsのインストール手順](https://opcdiary.net/technical/programming/%E7%A7%81%E5%AE%B6%E7%89%88-git-for-windows%E3%81%AE%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%E6%89%8B%E9%A0%86/)

>上のEnable file system cachingはPCのリソースは多少消費する代わりにgit status時などでの応答速度を改善するfscacheキャッシュを有効にするかしないかオプションです。

>下のEnable symbolic linksはシンボリックリンクの使用/不使用の選択です。チェックが入っているとGitでシンボリックリンクを使用できるようになりますが、WindowsのシンボリックリンクはPOSIXのそれとの互換性が必ずしもあるわけではないので、注意が必要ですが、たいていの場合は問題無く動作します。また、Windows 10 Fall Creators Update以降では開発者オプションをONにすることでシンボリックリンクの操作に管理者権限が必要なくなったので利便性が向上しています。

<img width=500 alt="setup_11.png" src=https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/916003/e2734867-3dd6-e6fd-f99b-6ef891fc7f5a.png>


### pseudo consoleを使用するかどうか

どのサイトでもチェックを入れていませんでしたので私も未チェックにしました。

下記、pseudo consoleについてですが気になる方は見てみてください。
[Windows Command-Line: Introducing the Windows Pseudo Console (ConPTY)](https://devblogs.microsoft.com/commandline/windows-command-line-introducing-the-windows-pseudo-console-conpty/)

<img width=500 alt="setup_12.png" src=https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/916003/84939240-f1ab-a676-d04e-e8798919370d.png>

インストールして終了!!

### インストールの確認
コマンドプロンプトで ```git --version```を実行しインストールしたversionが出力されればOK

```
c:\>git --version
git version 2.30.0.windows.2
```





# 3 参考文献
[私家版 Git for windowsのインストール手順](https://opcdiary.net/technical/programming/%E7%A7%81%E5%AE%B6%E7%89%88-git-for-windows%E3%81%AE%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%E6%89%8B%E9%A0%86/)
[『2020年版』Git for Windowsをインストール、GitHubに接続するまで](https://it-kyujin.jp/article/detail/263/)
[エンジニアの入り口--【初心者向け】Gitのインストール方法をわかり易く解説（画面付き）](https://eng-entrance.com/git-install)
[Windows Command-Line: Introducing the Windows Pseudo Console (ConPTY)](https://devblogs.microsoft.com/commandline/windows-command-line-introducing-the-windows-pseudo-console-conpty/)

# 4 最後に
これで皆さんと同じラインに少しは近づけたかな。。
正直インストールしてて分からないことも少しあったけど、そこらへんは今後使っていく中で勉強していくということにしましょう。