🤚

Gitのインストール(Windows10環境)

2021/11/21に公開

概要

標準のGitクライアントをインストールする。
このGitクライアント自体を直接使うことは少ないかもしれないが、他の環境(例えばVS CodeとかEclipseとか)からGitを使うときに必要になるのでインストールする。

環境

Windows10 20H2

インストール

手順
  1. Gitのページにアクセス。
    https://git-scm.com/
    トップページにインストーラーダウンロードのリンクがあるのでクリック。

  2. インストーラーを実行。

  3. Next

  4. インストール場所の設定。デフォルトのままで良いと思う。Next。

  5. インストールするコンポーネントを選ぶ。デフォルトのままで良いと思う。Next。

  6. スタートメニューに追加される名前かしら?デフォルトのままで以下略。

  7. Gitで使われるデフォルトのエディターを選んでくれって?デフォルトではVimが選択されてたけど自分の環境にはVS CodeがあるのでVS Codeにした。Next。

  8. 新しいリポジトリ作った時の初期ブランチの名前を決めてくれって?デフォルトにしておこう。Next。

  9. PATH環境変数を決めてくれって?3rd-party softwareから使うのが主だからデフォルトにしておこう。Next。

  10. 使うSSHクライアント選んでくれって?バンドルされてるのでええやろ(デフォルト)。Next。

  11. HTTPS接続のなんか?ええい知らんけどデフォルトやNext。

  12. 改行コードの処理方法を決める。
    これ、後からも変えられるんだけどひとまず自分は真ん中の「Checkout as-is,commit Unix-style line endings」にします。詳しくは巻末の改行コードの設定について

  13. 使うターミナルを以下略デフォルト。

  14. pullのデフォルトの動作を選んでくれって?知らんけどデフォルト。Next。

  15. credential?ええいデフォルト。

  16. 他の設定?もうわからんからデフォルト。

  17. 実験的オプション?俺を実験体にしようってのか、お断りだ!ノーチェックでターンエンド!

  18. やっと終わったよ。

ユーザー名とメールアドレスの設定

Gitの設定にユーザー名とメールアドレスを追加しておいたほうが良い。ツールによるが、メールアドレスを設定していないとGitHub等にコミットできなかったりする。

これを防ぐには、GitHub登録時に払い出されるメールアドレスを使うという方法がある。
なので、プライベートメールアドレスを隠したい場合は下記GitHub登録を実施し、
https://zenn.dev/ctrlkeykoyubi/articles/0ba47a8ec2bab5

その後下記手順を実施する。

手順
  1. GitHubのページでアイコン→Settings→Emails→Keep my email addresses privateの説明欄にある、GitHubから払い出されたメールアドレスをコピーする。([一意のID]+[GitHubのユーザー名]@users.noreply.github.com)
  2. Git Bashを起動する。
  3. 下記コマンドでユーザー名を設定する。ダブルクォーテーションで囲めばスペース入れていいみたいだし、これは一意のやつじゃなくて単純な表示名の扱いっぽい。俺は空気を読まずに日本語を設定するぞ馬鹿野郎!
    git config --global user.name "ユーザー名"
    ↓何も応答が無いが成功しているよう?
  4. 下記コマンドでメールアドレスを設定する。プライベートメールアドレスじゃなくて、GitHubから払い出されたやつ
    git config --global user.email メールアドレス
  5. 下記コマンドで、ちゃんと設定されていることを確認する。
    git config --global -l

改行コードの設定について

インストール時に注意した、改行コードの説明

3つの設定

Windows環境のGitでは、リポジトリにチェックアウト・コミットした時の改行コードの処理が3つある。

  1. チェックアウトするときはCRLFにする。コミットするときはLFにする。
    Checkout Windows-style,commit Unix-style line endings.
  2. チェックアウト時はそのまま、コミットするときはLFにする。
    Checkout as-is,commit Unix-style line endings.
  3. チェックアウトするときもコミットするときもそのまま。
    Checkout as-is,commit as-is.

困るケース

デフォルトだと1番の「チェックアウト時CRLF、コミット時LF」なのだが、これで困るケースがある。それはLinuxのシェルファイル等を使うとき。

リポジトリにあるときは改行コードがLFで問題無いのだが、チェックアウトしたらCRLFになる。
でそのファイルをLinuxの環境に入れてシェルを実行しようとしても正しく動作しない。

こういう時は、リポジトリからチェックアウトせずに単純にダウンロードすれば、改行コードはLFのまま。

実際の設定内容

実際の設定はcore.autocrlfという設定項目がり、値はtrue、input、falseとなっている。

設定 動作
true チェックアウトするときはCRLFにする。コミットするときはLFにする。
input チェックアウト時はそのまま、コミットするときはLFにする。
false チェックアウトするときもコミットするときもそのまま。

Gitをインストールした時に入ったGit bashで設定を確認できる。

Git Bash上で下記コマンドを打つ。
git config --show-origin core.autocrlf

設定がinputであるとわかる。

変え方は調べて下せえ…。
EclipseとかだとGUIからリポジトリ単位で設定できたりしたはず。

Discussion