threads / discuss / 29437

Most reliable method to detect a merge commit in pre-commit hook

Subject: Most reliable method to detect a merge commit in pre-commit hook

## tl;dr

2 messages between Jan 24, 2012 and Jan 24, 2012.

replies: 1people: 2as markdown or json

Sebastian Schuberth· Jan 24, 2012, 14:16 UTC · lore
Hi,

I'd like our pre-commit hook to skip some checks if the commit that's about to be made is a merge commit. What's the most reliable way to detect a merge commit from within a pre-commit hook script? Currently, the only way I see is to check whether .git/MERGE_MSG exists, but I'd feel safer to check whether the commit is going to have more than one parent or so. Is that possible / a better detection?

-- 
Sebastian Schuberth
Stefan Haller· Jan 24, 2012, 15:10 UTC · re: Sebastian Schuberth · lore

Re: Most reliable method to detect a merge commit in pre-commit hook

Sebastian Schuberth <sschuberth@gmail.com> wrote:
Show 6 quoted lines
> I'd like our pre-commit hook to skip some checks if the commit that's
> about to be made is a merge commit. What's the most reliable way to 
> detect a merge commit from within a pre-commit hook script? Currently,
> the only way I see is to check whether .git/MERGE_MSG exists, but I'd
> feel safer to check whether the commit is going to have more than one
> parent or so. Is that possible / a better detection?

I haven't found a better way either, so this is the method we use too. The problem is that it fails when you are amending a merge commit; so the output of our pre-commit hook advises the user to manually do a "git commit --no-verify" in that case.

-- 
Stefan Haller
Berlin, Germany
http://www.haller-berlin.de/

← back to recent threads