tl;dr git rev-parse HEAD^{tree} でツリーオブジェクトのハッシュ値が取れるので、ブランチが異なる場合でも同じソースツリーであるかどうかを判定できます。 これを利用して、すでにテストを通ったtreeのハッシュ値をどこかに記録しておいて、同一のソースツリーに対するテストをスキップできます。 本題 よく使われている、develop/mainブランチ運用をしている場合に、ちょっとした修正を本番に入れたい場合には以下のようなフローを踏むことになるでしょう。 featureブランチをdevelopブランチの先頭から切って修正を作ってテストが通るのを待つ developブランチにfeatureブランチにマージしてテストが通るのを待つ mainブランチにdevelopブランチをマージしてテストが通ったらdeployする さて、この時、他の作業が混ざらない限りにおいては1,2,
![同じソースツリーでテストが通っていたらテストをスキップする | おそらくはそれさえも平凡な日々](https://cdn-ak-scissors.b.st-hatena.com/image/square/44fc27d71b62444cac921d824d82f54b46f499e2/height=288;version=1;width=512/https%3A%2F%2Fsongmu.jp%2Friji%2Fstatic%2Fimg%2Fsongmu-ogp.jpg)