グローバル設定とローカル設定を確認する
このステップでは、Git のグローバル設定とローカル設定の違い、およびすべての設定を表示する方法を探索します。
Git には異なるレベルの設定があります。最も一般的なものは以下の通りです。
- システムレベル:システム上のすべてのユーザーに適用されます。(個人ユーザーにはあまり使われません)
- グローバルレベル:システム上のあなたのユーザーアカウントに適用され、あなたのすべてのリポジトリに影響します。これは
~/.gitconfig
に保存されます。
- ローカルレベル:現在のリポジトリにのみ適用されます。これはリポジトリ内の
.git/config
に保存されます。
ローカル設定はグローバル設定を上書きし、グローバル設定はシステム設定を上書きします。
すべてのグローバル設定を表示するには、--global --list
フラグを使用できます。
git config --global --list
以下のような出力が表示され、設定した user.name
と user.email
、および init.defaultBranch
が表示されるはずです。
user.name=Jane Doe
[email protected]
init.defaultBranch=master
次に、my-time-machine
リポジトリ内にローカル設定を作成しましょう。リポジトリのディレクトリに戻ります。
cd ~/project/my-time-machine
この特定のリポジトリにのみ適用されるローカルのユーザー名を設定できます。別の名前を使用しましょう。
git config user.name "Time Traveler"
今回は --global
フラグを使用していないことに注意してください。これは、Git に現在のリポジトリに対してローカルに設定を行うよう指示します。
次に、--local --list
を使用してこのリポジトリのローカル設定を表示しましょう。
git config --local --list
先ほど設定したローカルのユーザー名が表示されるはずです。
user.name=Time Traveler
最後に、現在のリポジトリに適用されるすべての設定(ローカル設定とグローバル設定の両方)を表示しましょう。Git はローカル設定を優先するため、最初にローカル設定が表示されます。
git config --list
出力にはローカル設定とグローバル設定の両方が表示されます。user.name
が "Time Traveler"(ローカル設定)を表示し、user.email
が "[email protected]"(ローカルのメールアドレスを設定していないためグローバル設定)を表示していることに注意してください。
user.name=Time Traveler
[email protected]
init.defaultBranch=master
これは、Git がローカル設定をグローバル設定よりも優先する方法を示しています。