自分で必要な機能だったので,メモ書き程度にまとめておきます.
(zshでは試しているんですが,bashでは試してません.悪しからず)
git stash とは
複数branchにまたがって作業していると,branchAで作業途中だけどbranchBにちょっと切り替えたい時があります.そんなとき,現在の変更を一時的に退避させることのできるGitの機能です.
以下を参考にどうぞ:
変更を一時的に退避! キメろgit stash
色々なgit stash
git stash save "message"
実はgit stashでは, git stash save "message" とすることでmessageつきのstashを作成できます.
とってもわかりやすい!
messageを強制する
以下を自分の.zshrc (.bashrc)に記述する
# aliasの登録(お好みで)
alias -g gsh='my_git_stash_save'
# git stash で messageを強制する関数
function my_git_stash_save() {
if [ "$1" = "" ]; then
echo "You must set the message!";
echo "gsh [Your_Message]";
else
git stash save ${@:1};
# 1つ目の引数以降をすべてmessageとする
# ex. `gsh str1 str2 str3` の場合, messageは"str1 str2 str3"となる
fi
}
実行すると...
messageなしの場合,git stashは行われませんが,messageをつけることで,git stashは成功します


