diff options
Diffstat (limited to 'cmd/hook.go')
-rw-r--r-- | cmd/hook.go | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/cmd/hook.go b/cmd/hook.go index fede8649..95db18f0 100644 --- a/cmd/hook.go +++ b/cmd/hook.go @@ -117,7 +117,8 @@ func runHookPreReceive(c *cli.Context) error { } // Check force push - output, err := git.NewCommand("rev-list", oldCommitID, "^"+newCommitID).Run() + output, err := git.NewCommand("rev-list", oldCommitID, "^"+newCommitID). + RunInDir(models.RepoPath(os.Getenv(http.ENV_REPO_OWNER_NAME), os.Getenv(http.ENV_REPO_NAME))) if err != nil { fail("Internal error", "Fail to detect force push: %v", err) } else if len(output) > 0 { @@ -131,6 +132,7 @@ func runHookPreReceive(c *cli.Context) error { } hookCmd := exec.Command(customHooksPath) + hookCmd.Dir = models.RepoPath(os.Getenv(http.ENV_REPO_OWNER_NAME), os.Getenv(http.ENV_REPO_NAME)) hookCmd.Stdout = os.Stdout hookCmd.Stdin = buf hookCmd.Stderr = os.Stderr @@ -159,6 +161,7 @@ func runHookUpdate(c *cli.Context) error { } hookCmd := exec.Command(customHooksPath, args...) + hookCmd.Dir = models.RepoPath(os.Getenv(http.ENV_REPO_OWNER_NAME), os.Getenv(http.ENV_REPO_NAME)) hookCmd.Stdout = os.Stdout hookCmd.Stdin = os.Stdin hookCmd.Stderr = os.Stderr @@ -231,6 +234,7 @@ func runHookPostReceive(c *cli.Context) error { } hookCmd := exec.Command(customHooksPath) + hookCmd.Dir = models.RepoPath(os.Getenv(http.ENV_REPO_OWNER_NAME), os.Getenv(http.ENV_REPO_NAME)) hookCmd.Stdout = os.Stdout hookCmd.Stdin = buf hookCmd.Stderr = os.Stderr |