summaryrefslogtreecommitdiffstats
path: root/tools/git-setup.sh
diff options
context:
space:
mode:
authorDaan De Meyer <daan.j.demeyer@gmail.com>2024-03-14 10:29:55 +0100
committerDaan De Meyer <daan.j.demeyer@gmail.com>2024-03-15 17:27:49 +0100
commit6233a769327d8a1e7247ce741569752ffcf09144 (patch)
tree6d2068839e3f7a7dc0b20a3fa50faebddf6e0dbd /tools/git-setup.sh
parentdocs: Update HACKING guide with recommended git config (diff)
downloadsystemd-6233a769327d8a1e7247ce741569752ffcf09144.tar.xz
systemd-6233a769327d8a1e7247ce741569752ffcf09144.zip
meson: Rename add-git-hook.sh to git-setup.sh and configure git in it
Let's automatically apply the recommended git config with meson.
Diffstat (limited to 'tools/git-setup.sh')
-rwxr-xr-xtools/git-setup.sh18
1 files changed, 18 insertions, 0 deletions
diff --git a/tools/git-setup.sh b/tools/git-setup.sh
new file mode 100755
index 0000000000..2f7be5ccd6
--- /dev/null
+++ b/tools/git-setup.sh
@@ -0,0 +1,18 @@
+#!/bin/sh
+# SPDX-License-Identifier: LGPL-2.1-or-later
+set -eu
+
+cd "${MESON_SOURCE_ROOT:?}"
+
+if [ -e .git ]; then
+ git config submodule.recurse true
+ git config fetch.recurseSubmodules on-demand
+fi
+
+if [ ! -f .git/hooks/pre-commit.sample ] || [ -f .git/hooks/pre-commit ]; then
+ exit 2 # not needed
+fi
+
+cp -p .git/hooks/pre-commit.sample .git/hooks/pre-commit
+chmod +x .git/hooks/pre-commit
+echo 'Activated pre-commit hook'