要約
- ローカルでないフォルダでGit Bashを使うと死ぬほど遅い。
-
C\Program Files
の下にGit Bashで使う.bashrc
がある。 - そこにadd/commit/pushを自動化する
gish
コマンドを作った。
Git Bashの.bashrc
上で新たに関数を作る。
.bashrc
の場所
起動時に実行される.bashrc
はMacやLinuxであれば大体home直下がデフォルトですが,
Windows10では C:\Program Files\Git\etc\bash.bashrc
というところに存在します。
作成したgish
コマンド
ここの記述を参考に作りました。
- 引数は
gish "コミットメッセージ" [何らかの文字]
です。 - 引数が1つならエラーを返し,2つならコミットメッセージでcommit,3つあればpushまで行います。
# gish "コミットメッセージ" "何某かの文を入れるとPush"
gish(){
git add -A;
#引数の数に応じて分岐
if [ $# = 0 ]; then # Error
echo "Please add comment!"
elif [ $# = 1 ]; then # Commitだけ
msg=$1
git commit -m "$msg";
elif [ $# = 2 ]; then # Pushもする
msg=$1
git commit -m "$msg";
CULLENT_BRANCH=`git rev-parse --abbrev-ref HEAD`;
git push origin ${CULLENT_BRANCH};
fi
}
なお,Programfilesの中なので管理者権限が必要です。Gitのbashrcを書き換えるのはなんとなく気持ち悪いですが,別途Homeにbashrcを作ってProgramFiles側から実行させる。という手法もあることはあります。
結局どれがいいのか?
わかりません。教えて下さい…
この手の効率化はエイリアスやシェルや関数化など皆さんいろいろやってくれていますが,Git Bashでbashrcを書き換えている人はパット見いなかった&自分で使って悪い気はしなかったので投稿しました。
他にも
- zshで実装した方
などの記事を眺めたりしました。