質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
Git

Gitはオープンソースの分散バージョン管理システム(DVCS)です。

Q&A

解決済

2回答

3606閲覧

バグを含むファイルの変更が、いつmasterブランチにマージされたのか知りたい

JrMogura

総合スコア14

Git

Gitはオープンソースの分散バージョン管理システム(DVCS)です。

0グッド

0クリップ

投稿2019/03/24 06:32

前提・実現したいこと

gitのログの追い方の質問です。
バグを含むファイルの変更が、いつmasterブランチにマージされたのかを知りたいです。

発生している問題・エラーメッセージ

masterブランチでバグが発覚したため、そのバグがいつ頃から起きていたのかを追うことにしました。
バグ含む変更をしたブランチ名は不明ですが、バグの原因となっているファイル名は特定できているため、そのファイルのログから追うことにしました。しかし、結局問題のコミットIDがわかっても、その変更を含むブランチが、いつmasterにマージされたのかわからず、バグがいつから起きているかがわかりませんでした。

試したこと

masterブランチ環境にて、以下のコマンドを実施しました。

git log 問題のファイルパス ⇒masterへのマージコミットが表示されない git log --name-only ⇒マージコミットは見えるが、どのマージコミットで反映されたのかわからない

「git log ファイルパス」 で、 マージコミットを含む履歴が見れる方法があれば解決なのですが、
ググってもなかなか出てこなかったため、質問させていただきました。
実現不可能なら、ほかの方法で解決する形でも構いません。
ご教授よろしくお願いします。

補足情報(FW/ツールのバージョンなど)

git version 2.20.1.windows.1

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

git blame ファイル名 でそのファイルを確認する事が出来ます。
コミットIDや変更者、変更日も見る事が出来るのでお試し下さい。

<追記>
https://www.yoheim.net/blog.php?q=20160709
もしgithubをご使用でしたら、githubの画面上で「t」を押して、調べたいファイルを選択してそのファイルの画面を開き「b」と押すとblameが画面上で確認出来るので、簡単に変更者を調べる事ができます。

投稿2019/03/26 11:55

編集2019/03/26 12:08
choitarou

総合スコア112

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

JrMogura

2019/04/07 13:22

ご返答ありがとうございます。行単位で見れるのはすごく便利ですね。 こちらマージコミットは含まれるのでしょうか? 今環境がないので、明日、実際にやってみます。
choitarou

2019/04/07 22:50

はい、全てのコミットの変更履歴を見る事が出来ます。どのコミットで、どのPRかも確認出来ますよ。
JrMogura

2019/04/08 15:42

今日試してみました。すごく便利ですね! ただ、マージコミットではなく、変更したコミットが表示されるようでした。 具体的には、以下の動きになります。 ①ブランチAでコードを変更してコミット ②変更したコードをmasterにマージ ③blameで確認 ⇒変更行に、①のコミットIDが表示される。 今回知りたいのは、masterにいつバグが入ったかなので、②のIDがわかると最高なのですが、 そのようなオプションはなさそう?です
guest

0

ベストアンサー

git diff で変更されたファイルのリストが取れますが、そんでどうでしょう

投稿2019/03/24 06:38

y_waiwai

総合スコア87719

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

JrMogura

2019/03/24 09:33

git diffについて知識が乏しかったため、いろいろ検索してみました。 git diffで比較対象間の時間を狭めていけば、マージコミットにたどり着けそうですね。 一旦これで追ってみます。 ご回答ありがとうございます! ちなみに、話が戻ってしまうのですが、 git logでファイルパスを指定した際、マージコミットを含めるオプションはないものなのでしょうか?
JrMogura

2019/04/07 13:11

返信遅くなりすみません。リンク確認しました。そこらへんの話です。 このページ含めいろいろ見てみたのですが、なさそうですね。。 git diff何度か使って、いつ頃マージされたか特定できるので、解決とします!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問