技術

[Git] どのコミットでバグが入ったか原因究明する方法【git blame】

投稿日:

こんにちは。さとうです。

今回はgitを使って、どのコミットでバグが入ったか原因究明する方法についてです。

git blame を使おう

$ git blame style.css

git blame を使うとファイルパスで指定したファイルの各行は、最後どのコミットで変更されたか?
ということを確認できます。

なので、この行の処理がバグに繋がっているということがわかれば、git blame を使うことで、どのコミットでバグが起こったのか?を特定することができます。

 

実例

実行

$ git blame style.css

結果

^93b7c38 (Sato 2019-05-22 23:41:46 +0900 1) /*
^93b7c38 (Sato 2019-05-22 23:41:46 +0900 2) Template: test
^93b7c38 (Sato 2019-05-22 23:41:46 +0900 3) Theme Name: test_custom
^93b7c38 (Sato 2019-05-22 23:41:46 +0900 4) Theme URI: test
^93b7c38 (Sato 2019-05-22 23:41:46 +0900 5) */
^93b7c38 (Sato 2019-05-22 23:41:46 +0900 6)
432e3ee9 (Sato 2019-06-30 13:04:15 +0900 7) /*------------ 全体 ------------*/
^93b7c38 (Sato 2019-05-22 23:41:46 +0900 8) .subnav .site_description{
^93b7c38 (Sato 2019-05-22 23:41:46 +0900 9) margin: 2em 0;
^93b7c38 (Sato 2019-05-22 23:41:46 +0900 10) }
46c61b6d (Sato 2019-07-29 17:24:16 +0900 11) .profile a{
46c61b6d (Sato 2019-07-29 17:24:16 +0900 12) padding: 0 5px;
46c61b6d (Sato 2019-07-29 17:24:16 +0900 13) }

左から順番に
コミットハッシュ (コミット者 コミット日時 行数) 記述内容
という内容が表示されます。

コミットハッシュがわかれば、どのプルリクかもわかりますし、解決できそうですね!

 

おわりに

「このバグの犯人誰だよ」と犯人探しをするのは気がひけますが、バグが起こってしまったのは事実です。

そのバグに対してしっかり原因を探して必要な対処をするためにも、優しい気持ちで原因究明していきたいと思います。

-技術

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

関連記事

[Ionic] ionic serveでの動作確認でファイルの変更が反映されない!

こんにちは。たなかです。 参画しているプロジェクトで散々苦しめられているIoni …

no image

【AWS】nginx/rails/mysqlをインストール

どうも、中田です。 最近AWSにテストサーバを立ち上げて検証したり、 お客様に一 …

no image

【gem/bundle】あんたたち一体どういう関係なのよ!!

どうも中田です。 今回はgemとbundleの話。 前置き よくあるgemの説明 …

【ionic】バックボタンの文字だけ消す

どうも中田です。 今回はHTML5ハイブリッド開発でお馴染みのionicについて …

no image

【Rails】idのauto increment設定を削除する

こんにちは railsを触っていてidからauto incrementの設定を削 …