问题
How can I find out if there were conflicts when merging a branch and what shenanigans did the person have to do to resolve those conflicts?
git log -p
seems to show empty diffs for all merge commits, regardless whether they have manual changes or not.
回答1:
git show produces a combined diff for a merge commit by default, which will contain only the lines that changed as part of the conflict resolution.
git show <merge_commit_sha1>
git log
takes the --cc
option to produce combined diffs for merge commits. For example, to find all merge commits with manual changes you can use:
git log -p --cc --min-parents=2
and look for commits with diffs.
来源:https://stackoverflow.com/questions/45253550/how-to-check-if-a-merge-commit-contains-manual-changes-e-g-resolved-conflicts