diff options
-rw-r--r-- | .gitconfig | 1 | ||||
-rw-r--r-- | README.md | 29 |
2 files changed, 29 insertions, 1 deletions
@@ -73,6 +73,7 @@ [core] editor = vim fileMode = true + hooksPath = ~/git-hooks [merge] tool = vimdiff [mergetool] @@ -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: |