🐁
【Git】PowerShell をカスタマイズして Git コマンドを簡略化しよう
はじめに
PowerShell の Profile を用いて Git コマンドを簡略化します。
まずこの記事を読んで gitconfig に Git コマンドのエイリアスを作ることを推奨します。
Gitコマンドにエイリアスをつけて効率化を図ろう!
メリット・デメリットは上記事と同じです。
- メリット
- 自分の解釈で命名できるのでわかりやすい
- タイピングが減るので速度が上がる
- 試行錯誤するのがたのしい
- デメリット
- コマンドがより安易に実行できてしまうので注意が必要
- 極端な別名をつけてしまうと本来のコマンドを忘れてしまうかも?
- コマンドを他の誰かに教えるときに困るかも
- 画面共有時、何をしているのか見ている人がわからなくなる場合がある
PowerShellプロファイルとは
- PowerShellセッション開始時に自動実行されるスクリプトファイル
- 個人のカスタム設定( エイリアス、関数、環境変数など )を保存する
プロファイルに記述することで永続化!
プロファイルの確認
プロファイルが存在するか確認
Test-Path $PROFILE
プロファイルの作成
存在しない場合は以下で作成
if (!(Test-Path -Path $PROFILE)) {
New-Item -ItemType File -Path $PROFILE -Force
}
プロファイルの編集
作成されたプロファイルを編集
notepad $PROFILE
PowerShell のエイリアスとは
コマンドやスクリプトに短縮名を設定する機能
Powershell には以下のようなエイリアスがデフォルトで設定されている
ls -> Get-ChildItem
cd -> Set-Location
頻出コマンドを簡略化
"git" を省略
まずは git コマンドを実行するときの git
を省略
function g { git $args }
タイプ数を削減できました。
git status => g status
git branch => g branch
慣れるまで少し時間を要しますが、これだけでもだいぶ快適です。
gitconfig にエイリアスがある場合は数文字でコマンドの実行ができるようになります。
git st => g st
git b => g b
よく使うコマンドを省略
コマンドの status
や branch
を例に省略
function gst { git status $args }
function gb { git branch $args }
gitconfig にエイリアスがある場合は以下のようにしてもOK
function gst { git st $args }
function gb { git b $args }
g status => gst
g branch => gb
複数のコマンドをひとつにまとめる
複数のコマンドをひとつにまとめて実行することもできる
function gacm {
git add -A
git commit -m $args[0]
}
おまけ
git コマンドに限らずいろいろできる
npm
npm install
なども省略できる
function ni { npm install }
"g" も省略できる
PowerShell のデフォルトのエイリアス等と被っていなければ、命名は自由なので g
をなくすこともできる
git コマンド
と git コマンド以外
で混同しないように注意が必要ですね
function st { git st $args }
function b { git b $args }
作業場所の移動をコマンドにする
どこにいても特定のディレクトリに戻ってくることができる
function ct { cd C:\Users\$env:USERNAME\workspace\test }
Discussion