Gitの設定

最終更新日:2024-03-28 | ページの編集

概要

質問

  • Git を使うために必要な設定は何ですか?

目的

  • コンピュータで初めて git を使うための設定が出来るようになりましょう。
  • --global 設定フラグの意味を理解しましょう。

Git を新しいパソコンで初めて使う場合、いくつかの設定を変更しなければなりません。 Git を始めるにあたって、私達が変更する設定をいくつか表記します:

  • 名前とメールアドレス、
  • 使用したいテキストエディタ、
  • 以上の設定をグローバル設定として使う(つまり、全てのプロジェクトに反映させる)。

コマンドラインでは、Git コマンドは git <動詞> <オプション> と入力します。ここでの「動詞」は、Git に何をさせたいのかを表し、「オプション」はその動詞にとって必要とされる追加の情報です。 ドラキュラが新しいユーザーの場合、以下のようにコンピュータを設定します:

BASH

Vim の終了の仕方

ここでは、ドラキュラの代わりに自分の名前とメールアドレスを使いましょう。 ここで入力した名前とメールアドレスは、これから行う Git での作業に関わってきます。というのも、これからのレッスンでGitHubBitBucketGitLab、またはその他のGit をホストするサーバーに変更箇所を「プシュ」した(送った)際に、これらの情報が使われるからです。

これらのレッスンでは、GitHub に接続するので、GitHub アカウントと同じメールアドレスに設定してください。 プライバシーについて気になる方は、GitHub のメールアドレスをプライベートにするための説明 を参照してください。

電子メールの非公開

GitHub でプライベートのメールアドレスを使う場合は、同じメールアドレスを user.email の値に設定してください(例:username@users.noreply.github.com)。

改行コード

他のキーと同様に、キーボードで Enter または (またはMacでは Return)を押すと、コンピュータはそれを文字として入力します。 話が長くなるので詳しい説明は省きますが、行末に使われる文字はオペレーティングシステム(OS)よって違います。 (行末に使われる文字を「改行コード」と呼びます。) Git は、改行コードを使ってファイルの違いを確かめるため、違うパソコンでファイルを編集した時に思わぬ問題が起こるかもしれません。 このレッスンの範囲外ですが、この問題については Pro Git book を読んでください。

Git がどのように改行コードを理解・変換するかは、 git configcore.autocrlf コマンドを使って変更できます。 以下の設定をおすすめします:

macOS および Linux:

BASH

$ git config --global core.autocrlf input

またはWindowsの場合:

BASH

$ git config --global core.autocrlf true

以下の表を参考に、ドラキュラはテキストエディタも設定しました:

エディタ 設定コマンド
Atom $ git config --global core.editor "atom --wait"
nano $ git config --global core.editor "nano -w"
BBEdit(Mac、コマンドラインツール付き) $ git config --global core.editor "bbedit -w"
Sublime Text (Mac) $ git config --global core.editor "/Applications/Sublime\ Text.app/Contents/SharedSupport/bin/subl -n -w"
Sublime Text (Win、32ビットインストール) $ git config --global core.editor "'c:/program files (x86)/sublime text 3/sublime_text.exe' -w"
Sublime Text (Win、64ビットインストール) $ git config --global core.editor "'c:/program files/sublime text 3/sublime_text.exe' -w"
メモ帳(Win) $ git config --global core.editor "c:/Windows/System32/notepad.exe"
Notepad++ (Win、 32 ビットインストール) $ git config --global core.editor "'c:/program files (x86)/Notepad++/notepad++.exe' -multiInst -notabbar -nosession -noPlugin"
Notepad++ (Win、 64 ビットインストール) $ git config --global core.editor "'c:/program files/Notepad++/notepad++.exe' -multiInst -notabbar -nosession -noPlugin"
Kate (Linux) $ git config --global core.editor "kate"
Gedit (Linux) $ git config --global core.editor "gedit --wait --new-window"
Scratch (Linux) $ git config --global core.editor "scratch-text-editor"
Emacs $ git config --global core.editor "emacs"
Vim $ git config --global core.editor "vim"
VS Code $ git config --global core.editor "code --wait"

設定したテキストエディタもいつでも変更することができます。

Vim の終了の仕方

多くのソフトの初期設定では、Vim がデフォルトのテキストエディタに設定されています。 保存せずに Vim を終了するには、Escを押した後に :q! と入力してからEnterまたは(Macの場合はReturn)を押してください。 保存してから終了するには、Escを押してから :wq と入力してEnterまたは(Mac の場合は Return)を押してください。

Git (2.28以上) では、新しいリポジトリを初期化したときに作成されるブランチの名前を設定できます。 ドラキュラはその機能を使って、最終的に使うクラウドサービスと一致するようにmainに設定することにします。

BASH

$ git config --global init.defaultBranch main

Gitブランチ名の設定

ソースファイルのどんな変更でも、ある「ブランチ」に属しています。 このレッスンの新しい学習者にとっては、ブランチが存在し、このレッスンでは1つのブランチを使うことを知っていれば十分です。
デフォルトでは、git init で新しいリポジトリを作成すると、Git がmaster というブランチを作成します (次のエピソードで説明します)。 この用語は、 人身売買という人種差別的慣習を想起させ、 ソフトウェア開発コミュニティ は、 より包括的な言葉を採用するように動いています。

2020年には、ほとんどのGit ホスティングサービスは、mainをデフォルトの ブランチとして使うように移行しました。 例として、GitHub やGitLab で新規に開いたリポジトリのデフォルトは mainです。 しかし、Gitはまだ同じ変更を行っていません。 その結果、ローカル・リポジトリは、ほとんどのクラウド・サービスと同じブランチ名を手動で設定する必要があります。

2.28より前のバージョンのGitでは、個々のリポジトリで変更が可能です。 そのためのコマンドは次回のエピソードで紹介します。 ローカルのGit の設定でこの値が設定されていない場合、init.defaultBranch のデフォルト値は master になることに注意しましょう。

上記の5つのコマンドは、一度実行するだけで十分です。--global フラグは Git に、 今使っているパソコン内にある自分のアカウントに関連する全てのプロジェクトに同じ設定をするように指示しています。

さっそくこれらの設定を確認し、core.editorをテストしてみましょう:

BASH

$ git config --global --edit

追加の変更を加えずにファイルを閉じましょう。 設定ファイルのタイプミスは問題を引き起こすため、以下のように設定を表示する方が安全です。

BASH

$ git config --list

また、必要であれば、同じコマンドを使えば、違うエディタやメールアドレスに変えることができます。 これは何度でもできます。

プロキシ

ネットワーク環境によってはプロキシ を使わなければならないかもしれません。 この場合、プロキシの設定が必要です:

BASH

$ git config --global http.proxy proxy-url
$ git config --global https.proxy proxy-url

プロキシを無効にするには:

BASH

$ git config --global --unset http.proxy
$ git config --global --unset https.proxy

Git のヘルプとマニュアル

git のコマンドを忘れた時は、-h を使えばコマンドの一覧を、--help を使えばマニュアルを見ることができます:ある git コマンドのサブコマンドやオプションを忘れてしまった場合は、 git <command> -h とタイプすることによって関連するオプションのリストを見るか、git <command> --help とタイプすることによって対応する Git マニュアルを見ることができます:

BASH

$ git config -h
$ git config --help

マニュアルを見ている間、:はコマンドを待っているプロンプトであり、 Q を押してマニュアルを終了できることを覚えておいてください。

より一般的には、利用可能な git コマンドのリストや、Git マニュアルを入手することができます:

BASH

$ git help

まとめ

  • git config--global オプションを使い、ユーザー名、メールアドレス、エディタ、その他の設定を行う。