Load git config from nix

This commit is contained in:
Manuel Thalmann 2024-07-15 20:24:47 +02:00
parent abad516efc
commit 5cb1026fc2

View file

@ -1,8 +1,12 @@
#!/bin/env fish
begin
set -l dir (status dirname)
source "$(status dirname)/../../Scripts/software.fish"
function configureSW -S
function configureSW -S -V dir
source "$dir/../../Scripts/config.fish"
set -l branch "valhalla.git.defaultBranch"
function setConfig
sudo git config --system $argv
end
@ -19,46 +23,41 @@ begin
pushd "$dir" > /dev/null
begin
set -l key valhalla.git.flow
set -l mainKey "$key.mainBranch"
set -l devKey "$key.devBranch"
git init
git commit --allow-empty -m "Initial commit" > /dev/null
git branch master || true &> /dev/null
git branch main || true &> /dev/null
git branch dev || true &> /dev/null
yes "" | git flow init &> /dev/null
sudo git flow config set --system master main > /dev/null
sudo git flow config set --system develop dev > /dev/null
if isSet "$mainKey"
sudo git flow config set --system master (getConfig "$mainKey") > /dev/null
else
true
end
if isSet "$devKey"
sudo git flow config set --system develop (getConfig "$devKey") > /dev/null
else
true
end
end
popd > /dev/null
rm -rf "$dir"
end
setConfig alias.ahfange init
setConfig alias.tuedezue add
setConfig alias.beschuldig blame
setConfig alias.zieh pull
setConfig alias.druck push
setConfig alias.machnah clone
setConfig alias.hol fetch
setConfig alias.zwiigab branch
setConfig alias.buechiih commit
setConfig alias.eich rebase
setConfig alias.erd rebase
setConfig alias.gahufwiifelde rebase
setConfig alias.vergliich diff
setConfig alias.tuezemme merge
setConfig alias.versorg stash
setConfig alias.markier tag
setConfig alias.pflueckoepfel cherry-pick
setConfig alias.pflueckhimbeeri cherry-pick
setConfig alias.buechuus checkout
setConfig alias.quaetsch 'merge --squash'
setConfig alias.pfudle 'push --force'
setConfig alias.beschuldigung blame
setConfig alias.zwiigli branch
setConfig alias.tagebuech log
setConfig alias.versteck stash
setConfig alias.zuestand status
setConfig alias.markierig tag
begin # Aliases
set -l key valhalla.git.aliases
set -l aliases (getConfig "$key" --json)
for name in (echo "$aliases" | jq 'keys[]' --raw-output0 | string split0)
setConfig "alias.$name" (getConfig "$key.$name")
end
end
end
end