リモートへのプッシュ時にブランチ名を省くBash関数


リモートへのプッシュ時にブランチ名を省くBash関数

概要

Windowsでgitを使う場合、Git Bash内でgitコマンドを入力します。
しかしながら、gitのpushコマンドで、ローカルの内容をリモートに反映させる際に、
現在作業中のブランチ名をいちいち打ち込むのが面倒な場合があります。
その場合に使うBashのutil関数を備忘録として載せました。

関数

コード例

function push_to_remote(){    
    local name=`git branch|grep "* "|sed -e "s/^\* //g"`;
    git push origin "${name}";
}

解説

git branchで現在のローカルのブランチ一覧を検索。
grep "* "で、現在作業中のブランチを割り出し。
sed -e "s/^\* //g"で、現在作業中のブランチ名から、現在作業中を示すマーク*を削除。
local name=で、コマンドの最終結果(現在作業中のブランチ名)を変数nameに格納。
最後はgit push origin "${name}"でリモートのブランチにローカルのブランチの内容を反映。

まとめ

gitコマンドで使いづらい点、分かり切った入力を省きたい場合、
Bashでシェル関数を積極的に作ることで、
無駄な手間を省くことができます。
今回のpushのための自作関数もそのような省力化の良い例です。

  • このエントリーをはてなブックマークに追加

PAGE TOP