Git の基本 | git config
git config コマンド
git config は、インストール済みの Git 環境または個別のリポジトリに対して、コマンドラインインターフェースから設定を変更するためのコマンドである。このコマンドを使うと、ユーザー情報からリポジトリ動作の初期設定まで、さまざまな項目を設定できる。よく使用される設定オプションの一部を以下に示す。
使い方
git config user.name <name>
現在のリポジトリで、すべてのコミットに使用される author 名を設定する。この設定は通常、--global フラグを指定して現在のユーザー向けに設定する。
git config --global user.name <name>
現在のユーザーが作成するすべてのコミットの author 名を設定する。
git config --global user.email <email>
現在のユーザーが作成するすべてのコミットの author メールアドレスを設定する。
git config --global alias <alias-name> <git-command>
Git コマンドのエイリアスを作成する。これは Linux の alias と同じように機能する。
git config --global color.ui "auto"
Git コマンドのユーザーインターフェースで色を使うように設定する。
git config --system core.editor <editor>
現在使用しているマシンで、git commit などのコマンド実行時に使用するエディタを指定する。引数 <editor> には、そのエディタを起動するコマンドを指定する。たとえば vi などである。
git config --global --list
現在設定されているグローバルな Git 設定を表示する。
git config --global --edit
グローバル設定ファイルをテキストエディタで開く。このコマンドを使うと、設定ファイルを手動で編集できる。
補足説明
すべてのオプション設定はプレーンテキストファイルに保存されるため、git config は利便性を高めるためのコマンドラインインターフェースにすぎない。一般的に Git の設定が必要になるのは、新しい開発マシンで初めて作業を始めるときであり、実際にはほとんどの場合 --global フラグを指定する。
Git のオプション設定は 3 つのファイルに分かれて保存される。次の場所で、リポジトリ別、ユーザー別、システム全体の設定内容をそれぞれ確認できる。
- <repo>/.git/config: 各リポジトリに関する設定。
- ~/.gitconfig: ユーザー別の設定。
--globalフラグを指定したオプション設定がここに保存される。 - $(prefix)/etc/gitconfig: システム全体の設定。
これらのファイルの設定が競合する場合、ユーザー別設定はシステム全体の設定より優先され、各リポジトリの設定はユーザー別設定より優先される。
設定の優先順位: 各リポジトリの設定 > ユーザー別設定 > システム全体の設定
設定ファイルを開くと、次のような内容が表示される。
[user]
name = John Smith
email = john@example.com
[alias]
st = status
co = checkout
br = branch
up = rebase
ci = commit
[core]
editor = vim
これらの値は手動で編集でき、その効果は git config コマンドを使用した場合と同じである。
使用例
Git をインストールした後、最初に行うべきことはユーザー名とメールアドレスの設定であり、必要に応じていくつかの基本設定を定義する。初期設定コマンドは一般的に次のようになる。
# Tell Git who you are
git config --global user.name "John Smith"
git config --global user.email john@example.com
# Select your favorite text editor
git config --global core.editor vim
# Add some SVN-like aliases
git config --global alias.st status
git config --global alias.co checkout
git config --global alias.br branch
git config --global alias.up rebase
git config --global alias.ci commit
これにより、上記のような ~/.gitconfig ファイルが作成される。