diff options
| author | Anatoli Babenia <anatoli@rainforce.org> | 2025-04-10 20:07:28 +0300 |
|---|---|---|
| committer | Gopher Robot <gobot@golang.org> | 2025-04-11 08:16:03 -0700 |
| commit | d5c513ca99314c64746d8c23dd8c126b9dbb3823 (patch) | |
| tree | ce54fc919754aa579b1f7a21d9709212b63199a6 | |
| parent | 44a75e6d7c7357094e78043f8786f4ad11fc811b (diff) | |
| download | go-x-review-d5c513ca99314c64746d8c23dd8c126b9dbb3823.tar.xz | |
git-codereview: do not write hooks if -n is givenv1.15.0
Fixes golang/go#73314
Change-Id: I881c2ae97f72990a6daac4919687f85cb24ac076
Reviewed-on: https://go-review.googlesource.com/c/review/+/664555
Auto-Submit: Dmitri Shuralyov <dmitshur@golang.org>
Reviewed-by: Dmitri Shuralyov <dmitshur@google.com>
Reviewed-by: Dmitri Shuralyov <dmitshur@golang.org>
TryBot-Bypass: Dmitri Shuralyov <dmitshur@golang.org>
Reviewed-by: Carlos Amedee <carlos@golang.org>
| -rw-r--r-- | git-codereview/hook.go | 20 | ||||
| -rw-r--r-- | git-codereview/review.go | 5 |
2 files changed, 19 insertions, 6 deletions
diff --git a/git-codereview/hook.go b/git-codereview/hook.go index a2c54e5..162e4d1 100644 --- a/git-codereview/hook.go +++ b/git-codereview/hook.go @@ -38,7 +38,9 @@ func installHook(args []string, auto bool) { oldHookContent := fmt.Sprintf(oldHookScript, hookFile) if string(data) == oldHookContent { verbosef("removing old %v hook", hookFile) - os.Remove(filename) + if makeChange() { + os.Remove(filename) + } } // Special case: remove old commit-msg shell script // in favor of invoking the git-codereview hook @@ -46,7 +48,9 @@ func installHook(args []string, auto bool) { // the future. if hookFile == "commit-msg" && string(data) == oldCommitMsgHook { verbosef("removing old commit-msg hook") - os.Remove(filename) + if makeChange() { + os.Remove(filename) + } } } @@ -72,12 +76,16 @@ func installHook(args []string, auto bool) { verbosef("installing %s hook", hookFile) if _, err := os.Stat(hooksDir); os.IsNotExist(err) { verbosef("creating hooks directory %s", hooksDir) - if err := os.Mkdir(hooksDir, 0777); err != nil { - dief("creating hooks directory: %v", err) + if makeChange() { + if err := os.Mkdir(hooksDir, 0777); err != nil { + dief("creating hooks directory: %v", err) + } } } - if err := os.WriteFile(filename, []byte(hookContent), 0700); err != nil { - dief("writing hook: %v", err) + if makeChange() { + if err := os.WriteFile(filename, []byte(hookContent), 0700); err != nil { + dief("writing hook: %v", err) + } } } diff --git a/git-codereview/review.go b/git-codereview/review.go index 5660b8d..795cc80 100644 --- a/git-codereview/review.go +++ b/git-codereview/review.go @@ -29,6 +29,11 @@ var ( const progName = "git-codereview" +// makeChange returns inverse of noRun for readability. +func makeChange() bool { + return !*noRun +} + func initFlags() { flags = flag.NewFlagSet("", flag.ExitOnError) flags.Usage = func() { |
