読者です 読者をやめる 読者になる 読者になる

はむはむエンジニアぶろぐ

このブログのコンセプトは"ハッキングの為なら愛する家族を傷つけることをいとわない" 自分にとってエンジニアリングは "手段ではなく生きる目的" である

【Git】サブコマンドを作ってみた!カレントブランチ名の変更が簡単に

f:id:secret_hamuhamu:20150405195300p:plain
Gitは、自作のサブコマンドを簡単に登録することができます。
実行パスが通っているディレクトリに git-サブコマンド名 のファイルを作成すれば、 git サブコマンド名 で呼び出すことができます。


サブコマンドのファイルに実行したい処理を記述すれば、自作のサブコマンドの出来上がり!!
すごく簡単でかつ便利です。

今回は、カレントブランチ名の変更をするサブコマンドをつくってみました。

環境構成

  • git version 2.3.8

git-rename

rename というサブコマンドを作ります。
やりたいことは、カレントブランチ名の変更です。
普通にコマンド実行するとこのような感じになる。

git branch -m old_branch_name new_branch_name

ちょっと長いし、-mオプションを私はよく忘れる。
ブランチ名の変更をする際は、ほとんどカレントブランチが対象であることが多い。

それをサブコマンドをつくって、省略しようと思う。

実行パスが通っているディレクトリに git-rename というファイルを作成し、処理を記述する。

#!/bin/bash
CURRENT_BRANCH_NAME=`git rev-parse --abbrev-ref HEAD`
NEW_BRANCH_NAME=$1

# 引数が空であればUsageを表示
if [ -z "$NEW_BRANCH_NAME" ]; then
    echo 'You can rename a branch of git'
    echo # 改行
    echo 'Usage: git rename <CURRENT_BRANCH_NAME> <NEW_BRANCH_NAME>'
    exit 1
fi

git branch -m $CURRENT_BRANCH_NAME $NEW_BRANCH_NAME
exit 0

Gistにも貼っておきます。
Gitのカレントブランチをリネームするサブコマンド · GitHub

Usage

bigfix というブランチ名から bugfix に変更する。

git rename bugfix
git branch
* bugfix

カレントブランチ名が切り替わった。

最近読んだ本

GitHub実践入門 ~Pull Requestによる開発の変革 (WEB+DB PRESS plus)

GitHub実践入門 ~Pull Requestによる開発の変革 (WEB+DB PRESS plus)

Web制作者のためのGitHubの教科書 チームの効率を最大化する共同開発ツール

Web制作者のためのGitHubの教科書 チームの効率を最大化する共同開発ツール

開発効率をUPする Git逆引き入門

開発効率をUPする Git逆引き入門

  • 作者: 松下雅和,船ヶ山慶,平木聡,土橋林太郎,三上丈晴
  • 出版社/メーカー: シーアンドアール研究所
  • 発売日: 2014/04/09
  • メディア: 単行本(ソフトカバー)
  • この商品を含むブログ (6件) を見る