LoginSignup
0
0

More than 3 years have passed since last update.

作業ブランチにpushする時の入力は面倒だけど、pushするブランチは確認したい

Last updated at Posted at 2020-06-29

最近、社内の人からgit pushの便利なコマンドを教えてもらいました。

 git push origin `git rev-parse --abbrev-ref HEAD`

これは現在のブランチのリモートへcommitをpushするコマンドです。
わざわざブランチ名を入力する手間が省けるので大変便利です。
私はgit puとaliasを設定して使っていました。

しかしある時、現在いるブランチを間違って認識していて、そのまま開発を進めてしまいったことがあり
間違ったブランチにpushしてしまうという過ちを犯してしまいました...(あぶない)

ということで、pushする前に確認してくれるシェルスクリプトを作成してみました。

作ったもの

  • コマンドを入力するとpushするブランチ(カレントブランチ)を出力
  • y or Yを入力すればpushされ、それ以外の入力はキャンセル

実際に調べながら作成したのでもっといい方法があったらアドバイスいただければと思います。

~/.bashrc

# git push & branch 確認
gitpu(){
    branch=`git rev-parse --abbrev-ref HEAD`

    if [ -z $branch ]; then
        return
    fi

    echo "push: $branch"
    read input

    # キャンセル
    if [ -z $input ]; then
        return
    fi

    if [ $input = 'y' ] || [ $input = 'Y' ]; then
        git push origin `git rev-parse --abbrev-ref HEAD`
    else
        return
    fi

}
Ariel:bash gatapon$ gitpu
push: gt.test             // current branchが出力される
y                         // `y` or `Y`を入力すればpushされる
Enumerating objects: 5, done.
Counting objects: 100% (5/5), done.
Delta compression using up to 8 threads
Compressing objects: 100% (2/2), done.
Writing objects: 100% (3/3), 287 bytes | 287.00 KiB/s, done.
Total 3 (delta 0), reused 0 (delta 0)
To github.com:rinonkia/bash_test.git
   bd724d2..706b2d2  gt.test -> gt.test

これで快適な開発ライフを送っていきたいと思います。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0