From 9ddbbd9d5a67e430ccf942d28088c9b4c2bb991f Mon Sep 17 00:00:00 2001
From: Lunny Xiao <xiaolunwen@gmail.com>
Date: Sun, 29 Oct 2017 03:36:20 +0800
Subject: [PATCH] improve force push detect when push (#2798)

---
 cmd/hook.go | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/cmd/hook.go b/cmd/hook.go
index 0ddbb36f9..9d805e4ef 100644
--- a/cmd/hook.go
+++ b/cmd/hook.go
@@ -118,7 +118,7 @@ func runHookPreReceive(c *cli.Context) error {
 		if protectBranch != nil && protectBranch.IsProtected() {
 			// detect force push
 			if git.EmptySHA != oldCommitID {
-				output, err := git.NewCommand("rev-list", oldCommitID, "^"+newCommitID).RunInDir(repoPath)
+				output, err := git.NewCommand("rev-list", "--max-count=1", oldCommitID, "^"+newCommitID).RunInDir(repoPath)
 				if err != nil {
 					fail("Internal error", "Fail to detect force push: %v", err)
 				} else if len(output) > 0 {