From df76acf33bf1470b1f5a77a9057ba16d293a247b Mon Sep 17 00:00:00 2001 From: Taylor Blau Date: Thu, 14 Sep 2017 12:45:46 -0400 Subject: [PATCH] commands: allow $GIT_LFS_TRACK_NO_INSTALL_HOOKS to disable hook installation --- commands/command_track.go | 4 +++- test/test-track.sh | 22 ++++++++++++++++++++++ 2 files changed, 25 insertions(+), 1 deletion(-) diff --git a/commands/command_track.go b/commands/command_track.go index 58b6072e..bbf5ea4c 100644 --- a/commands/command_track.go +++ b/commands/command_track.go @@ -42,7 +42,9 @@ func trackCommand(cmd *cobra.Command, args []string) { os.Exit(128) } - lfs.InstallHooks(false) + if !cfg.Os.Bool("GIT_LFS_TRACK_NO_INSTALL_HOOKS", false) { + lfs.InstallHooks(false) + } if len(args) == 0 { listPatterns() diff --git a/test/test-track.sh b/test/test-track.sh index 706d1dcc..cefb4bfc 100755 --- a/test/test-track.sh +++ b/test/test-track.sh @@ -488,3 +488,25 @@ begin_test "track (symlinked repository)" popd > /dev/null ) end_test + +begin_test "track (\$GIT_LFS_TRACK_NO_INSTALL_HOOKS)" +( + set -e + + reponame="track-no-setup-hooks" + git init "$reponame" + cd "$reponame" + + [ ! -f .git/hooks/pre-push ] + [ ! -f .git/hooks/post-checkout ] + [ ! -f .git/hooks/post-commit ] + [ ! -f .git/hooks/post-merge ] + + GIT_LFS_TRACK_NO_INSTALL_HOOKS=1 git lfs track + + [ ! -f .git/hooks/pre-push ] + [ ! -f .git/hooks/post-checkout ] + [ ! -f .git/hooks/post-commit ] + [ ! -f .git/hooks/post-merge ] +) +end_test