Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
Help us understand the problem. What is going on with this article?

コミットする時に現在のブランチと変更ファイルの状態を確認できるスクリプト

昨日、作業ブランチにpushする時の入力は面倒だけど、pushするブランチは確認したいを書きましたが、
よくよく考えてみたらコミットの段階で確認出来た方が良い事に気が付いたので、そのシェルスクリプトを作ってみました。

作ったもの

  • commit時に現在ブランチ、入力したコメントが出力される
  • y or Yの入力でコミットされる
  • 修正されたファイルの一覧が見れる

addしないままコミットしてしまうこともあったので、修正ファイルも表示されるようにしました。

~/.bashrc
gitcommit(){

    branch=`git rev-parse --abbrev-ref HEAD`
    if [ -z $branch ]; then
        return
    fi

    git status

    comment=$1
    if [ -z $comment ]; then
        echo '>> Comment is Required.'
        return
    fi

    echo "[branch]  $branch"
    echo "[comment] $comment"
    read input

    if [ -z $input ]; then
        return
    fi

    if [ $input = 'y' ] || [ $input = 'Y' ]; then
        git commit -m $comment
    else
        return
    fi

}

gitcommt <COMMENT>で実行します。

Ariel:bash gatapon$ gitcommit
On branch gt.test
Changes to be committed:
  (use "git reset HEAD <file>..." to unstage)

    modified:   first.txt

Changes not staged for commit:
  (use "git add <file>..." to update what will be committed)
  (use "git checkout -- <file>..." to discard changes in working directory)

    modified:   test2.txt

>> Comment is Required.

コメントがなければ終了する。

Ariel:bash gatapon$ gitcommit コミットしてみる
On branch gt.test
Changes to be committed:
  (use "git reset HEAD <file>..." to unstage)

    modified:   first.txt

Changes not staged for commit:
  (use "git add <file>..." to update what will be committed)
  (use "git checkout -- <file>..." to discard changes in working directory)

    modified:   test2.txt

[branch]  gt.test
[comment] コミットしてみる

現在のワークスペースとステージの状況が表示され、現在のブランチとコメントが確認できる。
y or Yを入力すると実行

[branch]  gt.test
[comment] コミットしてみる
y
[gt.test 6d163de] コミットしてみる
 1 file changed, 1 insertion(+)
gatapon
マッチングのサーバーサイドやってますん
diverse
結婚支援事業を中心に、友達・恋人探しのマッチング事業を展開。深刻化する恋愛離れ、未婚率の上昇を解決すべくWEB・アプリサービスを展開。すべての人へ出会いのプラットフォームを提供しています。
http://diverse-inc.co.jp/
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away