チャプター ▾ 第2版

1.6 はじめに - Git の初回セットアップ

Git の初回セットアップ

Git をシステムにインストールしたら、Git 環境をカスタマイズするためにいくつか作業を行う必要があります。これらの作業は、特定のコンピューター上で一度だけ行えばよく、アップグレード後も設定は保持されます。コマンドを再実行することで、いつでも変更できます。

Git には、Git の外観と操作のすべての側面を制御する設定変数を取得および設定できる git config というツールが付属しています。これらの変数は、3つの異なる場所に保存できます。

  1. [path]/etc/gitconfig ファイル: システム上のすべてのユーザーとすべてのリポジトリに適用される値が含まれます。--system オプションを git config に渡すと、このファイルからのみ読み書きされます。これはシステム設定ファイルであるため、変更するには管理者権限またはスーパーユーザー権限が必要です。

  2. ~/.gitconfig または ~/.config/git/config ファイル: ユーザー固有の値です。--global オプションを渡すことで、Git にこのファイルからのみ読み書きさせることができ、システム上で作業する_すべて_のリポジトリに影響します。

  3. 現在使用しているリポジトリの Git ディレクトリ (つまり .git/config) 内の config ファイル: その単一のリポジトリに固有です。--local オプションを使用すると、Git にこのファイルから読み書きを強制できますが、実際にはこれがデフォルトです。当然のことながら、このオプションが正しく機能するためには、Git リポジトリ内のどこかにいる必要があります。

各レベルは前のレベルの値を上書きするため、.git/config の値は [path]/etc/gitconfig の値を上書きします。

Windows システムでは、Git は $HOME ディレクトリ (ほとんどの人にとって C:\Users\$USER) で .gitconfig ファイルを探します。また、インストーラーを実行したときに Windows システムに Git をインストールする場所である MSys ルートを基準とした [path]/etc/gitconfig も探します。Windows 用 Git のバージョン 2.x 以降を使用している場合、Windows XP では C:\Documents and Settings\All Users\Application Data\Git\config に、Windows Vista 以降では C:\ProgramData\Git\config にシステムレベルの設定ファイルも存在します。この設定ファイルは、管理者として git config -f <file> でのみ変更できます。

すべての設定とその出所は、次のコマンドを使用して表示できます。

$ git config --list --show-origin

あなたの識別情報

Git をインストールしたら、まずユーザー名とメールアドレスを設定する必要があります。これは、すべての Git コミットがこの情報を使用し、作成を開始するコミットに不変的に組み込まれるため、重要です。

$ git config --global user.name "John Doe"
$ git config --global user.email johndoe@example.com

繰り返しますが、--global オプションを渡した場合、Git はそのシステム上のユーザーに対して常にその情報を使用するため、これは一度だけ行えば済みます。特定のプロジェクトで異なる名前またはメールアドレスでこれを上書きしたい場合は、そのプロジェクト内にいるときに --global オプションなしでコマンドを実行できます。

多くの GUI ツールは、最初に実行するときにこれを設定するのに役立ちます。

あなたのエディタ

これで識別情報が設定されたので、Git がメッセージの入力を要求するときに使用するデフォルトのテキストエディタを設定できます。設定されていない場合、Git はシステムのデフォルトエディタを使用します。

Emacs のような別のテキストエディタを使用したい場合は、次のようにします。

$ git config --global core.editor emacs

Windows システムで別のテキストエディタを使用したい場合は、その実行可能ファイルへの完全なパスを指定する必要があります。これは、エディタのパッケージ化方法によって異なる場合があります。

一般的なプログラミングエディタである Notepad++ の場合、執筆時点では 64 ビット版がすべてのプラグインをサポートしていないため、32 ビット版を使用することをおすすめします。32 ビットの Windows システムを使用している場合、または 64 ビットのシステムで 64 ビットのエディタを使用している場合は、次のように入力します。

$ git config --global core.editor "'C:/Program Files/Notepad++/notepad++.exe' -multiInst -notabbar -nosession -noPlugin"

Vim、Emacs、Notepad++ は、Linux や macOS などの Unix ベースのシステム、または Windows システムで開発者によく使用される人気のテキストエディタです。別のエディタ、または 32 ビット版を使用している場合は、お気に入りのエディタを Git で設定する方法について、git config core.editor コマンド で具体的な手順を確認してください。

警告

このようにエディタを設定しない場合、Git がエディタを起動しようとすると、非常に混乱した状態になる可能性があります。Windows システムでの例としては、Git が開始した編集中に Git 操作が途中で終了してしまうことが挙げられます。

デフォルトのブランチ名

デフォルトでは、git init で新しいリポジトリを作成すると、Git は _master_ というブランチを作成します。Git バージョン 2.28 以降では、初期ブランチに別の名前を設定できます。

デフォルトのブランチ名を _main_ に設定するには、次のようにします。

$ git config --global init.defaultBranch main

設定の確認

設定を確認したい場合は、git config --list コマンドを使用して、その時点で Git が見つけることができるすべての設定をリスト表示できます。

$ git config --list
user.name=John Doe
user.email=johndoe@example.com
color.status=auto
color.branch=auto
color.interactive=auto
color.diff=auto
...

Git は異なるファイル (例えば [path]/etc/gitconfig~/.gitconfig) から同じキーを読み込むため、キーが複数回表示されることがあります。この場合、Git は各一意のキーについて最後に読み込んだ値を使用します。

また、git config <key> と入力することで、特定のキーの値が何であると Git が考えているかを確認することもできます。

$ git config user.name
John Doe

Git は複数のファイルから同じ設定変数の値を読み込む可能性があるため、これらの値のいずれかが予期しない値になり、その理由がわからない場合があります。そのような場合は、その値の_出所_について Git に問い合わせると、その値を設定する上で最終的な決定を下した設定ファイルが示されます。

$ git config --show-origin rerere.autoUpdate
file:/home/johndoe/.gitconfig	false
scroll-to-top