🖥

Git | ブランチルートを基準に変更差分を探す grep もどき

に公開

ブランチルートを基準に、変更差分から grep する。

$ git diff $(git merge-base master HEAD) | grep [TEXT]

どういう時に使う?

  • 自分のコミットで、たくさんの箇所を変更しなければいけない。 ( ブランチ = 自分の変更とは限らないけれど )
  • たとえばひとつのモデルで、メソッド名を変更した。モデルも、モデルのテストも、ビューも、ビューのテストも、デコレーターも、デコレーターのテストも変えなければいけない。
  • 変更忘れが恐い。 でも $ git grep はレポジトリ全体から検索してしまう。

内容

  • linux コマンドで grep しているだけ。
  • 行番号は出ない。
  • ファイル名も出ない。
  • でも自分の場合、地味に便利。

エイリアス登録

[alias]
  dig = !git diff $(git merge-base master HEAD) | grep

$ git dig [TEXT]

コマンド例

$ git dig teacher
+      @teacher = Teacher.new(student: 'pretty')
+      it { is.expected to eq 'teacher is not foolish.' } 
+      attr_accessor :teacher_whip

補足

きっともっと良い方法あるはず。でもまだ調べられてない。

環境

  • git version 2.7.4 (Apple Git-66)

チャットメンバー募集

何か質問、悩み事、相談などあればLINEオープンチャットもご利用ください。

https://line.me/ti/g2/eEPltQ6Tzh3pYAZV8JXKZqc7PJ6L0rpm573dcQ

Twitter

https://twitter.com/YumaInaura

公開日時

2016-06-16

Discussion