From 672c91bc95a167269fb7ddfa2c84e4f7da2bdad2 Mon Sep 17 00:00:00 2001 From: Harald Pfeiffer <coding@lirion.de> Date: Sun, 14 Jul 2024 11:32:25 +0200 Subject: here goes another attempt --- .gitconfig | 1 + README.md | 29 ++++++++++++++++++++++++++++- 2 files changed, 29 insertions(+), 1 deletion(-) diff --git a/.gitconfig b/.gitconfig index a830a7d..440b155 100644 --- a/.gitconfig +++ b/.gitconfig @@ -73,6 +73,7 @@ [core] editor = vim fileMode = true + hooksPath = ~/git-hooks [merge] tool = vimdiff [mergetool] diff --git a/README.md b/README.md index 7710d7a..2b8301f 100644 --- a/README.md +++ b/README.md @@ -4,7 +4,34 @@ Yet another (!) approach at building up a centralized configuration. Parts are old, parts are not done yet, we're getting there. -## Information for cloning +# Information for cloning + +## only clone git-prompt.sh + +Define your git hooksPath. If `git config --global core.hooksPath` delivers no result, choose a directory +where to place your hooks. I am going with `git config --global core.hooksPath '~/git-hooks'` (the quotation +marks are essential here, otherwise `~` would be converted to a static home directory name). + +Inside that folder, place a file with following content: + +``` +#!/usr/bin/env sh + +if git remote get-url origin --no-all | grep -P 'lirion.*dotfiles.git' > /dev/null; then + install -dvm .git/modules + install -dvm .git/modules/git-prompt + install -dvm .git/modules/git-prompt/info + cat > .git/modules/git-prompt/info/sparse-checkout <<EOF +contrib/completion/git-prompt.sh +EOF + rm -r ./git-prompt + git -c submodule.sha1collisiondetection.update=none submodule update --init --recursive +fi +``` + +Then you can proceed to clone. + +## sha1collisiondetection For git-prompt, its submodule sha1collisiondetection may be "broken" (i.e. it cannot be pulled), here's a fix: -- cgit v1.2.3