質問: 現在bitbucketを使って開発しています。 dev_aブランチをdevブランチにマージしようと思い、dev_aブランチからdevブランチにプルリクエストを投げます。 その時に表示される差分と、逆にdevブランチからdev_aブランチにプルリクエストを投げた時の差分と全然違います。 これってなぜなんでしょうか。gitはまだ4ヶ月くらいしか使っておらず理解が浅く申し訳ないですが、よろしくお願いします。
回答: 例えば次のようなコミットツリーだと、 ``` A -+- B (dev) | +- C (dev-a) ``` `dev_a` から `dev` なら下記の B と D の差分、 ``` A -+- B -+- D (dev) | | +- C -+ ``` 逆に `dev` から `dev_a` なら下記の C と E の差分、 ``` A -+- B -+ | | +- C -+- D (dev-a) ``` になるためではないでしょうか? 結果としてできあがる D はが同じ内容だとしても、差分の元が異なります。 つまり、プルリクエストの差分は B と C の差分が表示されるわけではなく、マージ元とマージされた結果の差分が表示されるためです。