gitではよく使う長いコマンドにエイリアスを設定して簡単に呼び出せるようにすることができます。
よくあるエイリアスの設定では、「git commit」を「git ci」として登録したり、「git checkout」を「git co」として登録するのが一般的です。
エイリアスの3つの適用範囲
エイリアスを作成する前に、エイリアスが使用できる環境が3種類あることを理解する必要があります。
システム全体で設定した場合、他のユーザーもそのコマンドを実行できるようになります。(※他のユーザーの環境に影響を与えてしまうので注意が必要です)
ユーザー単位の場合、複数のプロジェクト(リポジトリ)で設定したエイリアスを使い回すことができます。
リポジトリ単位の場合、エイリアスが有効になるのは、該当するプロジェクト(リポジトリ)のみです。
通常はユーザー単位で登録するのが一般的です。
・既存のコマンドは使用できない。
git commitのcommitを別の内容に置き換えはできない。
gitエイリアスの作成方法
gitコマンドのエイリアスを作成する方法は次の2つです。
コマンド入力で設定する
コマンド入力で設定する場合は以下のようになります。
$ git config [option] alias.エイリアス 通常のコマンド
オプションの部分は、作成するエイリアスの指定範囲を決めます。登録したい環境にあわせ「–system」「–global」あるいはオプション無しとします。
適用範囲 | コマンドオプション | コマンド例 |
---|---|---|
システム全体 | –system | git config –system alias.ci commit |
ユーザー単位 | –global | git config –global alias.ci commit |
リポジトリ単位 | なし | git config alias |
エイリアスの部分には省略形の表記(※git以降)を記述します。通常のコマンドに記述するのもgit以降です。
実例
例えば、適用範囲をユーザー単位として「git commit」を「git ci」とする場合以下のようになります。
$ git config --global alias.ci commit
設定ファイルを直接編集する
対象の設定ファイルを直接編集することでエイリアスを設定することもできます。対象のファイルの場所は以下のようになります。
適用範囲 | 設定ファイル |
---|---|
システム全体 | /etc/gitconfig |
ユーザー単位 | ~/.gitconfig |
リポジトリ単位 | .git/config |
システム全体と、ユーザー単位のファイルパスはルートからのパスになります。
レポジトリ単位のファイルパスは、プロジェクト(レポジトリ)のルートディレクトリ直下のパスです。(git init
した場所)
各ファイル開き以下のように追記して、保存すればエイリアスの設定は完了です。
[alias]
エイリアス = 通常コマンド
エイリアスの部分には省略形の表記(※git以降)を記述します。通常のコマンドに記述するのもgit以降です。
既に[alias]が記述してある場合は、そこに追記(あるいは既存の内容を編集)してください。
複数設定する場合
エイリアスを複数設定する場合は、改行して記述していきます。
[alias]
エイリアス1 = 通常コマンド1
エイリアス2 = 通常コマンド2
エイリアス3 = 通常コマンド3
,,,,,
実例
例えば、ユーザー単位「git commit」を「git ci」とする場合は以下のようになります
#vimエディタで.gitconfigファイルを開く
$ vi ~/.gitconfig
エディタが立ち上がるので、以下を記述します。
[alias]
ci = commit
便利なエイリアス例
よく使う便利なエイリアスの設定例は以下のようになります。
コマンド
通常コマンド | エイリアス | 内容 | コマンド(ユーザー単位) |
---|---|---|---|
commit | ci | コミット | $ git config --global alias.ci commit |
status | st | ステータス | $ git config --global alias.st status |
branch | br | ブランチ | $ git config --global alias.br branch |
checkout | co | チェックアウト | $ git config --global alias.co checkout |
checkout -b | cob | ブランチを新規作成しチェックアウト | $ git config –global alias.co checkout -b |
log –graph –pretty=format:’%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset’ –abbrev-commit | logg | コミット履歴を美しく表示 | $ git config --global alias.logg "log --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%a |
~/.gitconfigファイルの内容
上記設定の場合、~/.gitconfigは以下のようになります。直接編集することも可能です。
$ cat ~/.gitconfig
(省略)
[alias]
ci = commit
st = status
br = branch
co = checkout
cob = checkout -b
logg = log --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit
エイリアス設定の早見表
システム全体、ユーザー単位、リポジトリ単位ごとの設定ファイル、コマンドオプションをまとめると以下のようになります。
適用範囲 | 設定ファイル | コマンドオプション | コマンド例 |
---|---|---|---|
システム全体 | /etc/gitconfig | –system | git config –system alias.ci commit |
ユーザー単位 | ~/.gitconfig | –global | git config –global alias.ci commit |
リポジトリ単位 | .git/config | なし | git config alias |