From f04ee51fb186e67624b97f47c913b6fb31711801 Mon Sep 17 00:00:00 2001 From: Martin Blazik Date: Tue, 27 Oct 2020 11:20:10 +0100 Subject: [PATCH] Refactor git aliases script --- scripts/git-config.sh | 80 +++++++++++++++++++++++++------------------ 1 file changed, 46 insertions(+), 34 deletions(-) diff --git a/scripts/git-config.sh b/scripts/git-config.sh index 8d0e462..9a396b0 100755 --- a/scripts/git-config.sh +++ b/scripts/git-config.sh @@ -1,49 +1,61 @@ #!/bin/bash -set -x +if [[ $1 == "-dry" ]]; then + DRY=true +else + DRY=false +fi -#git config --global user.name "Martin Blazik" -#git config --global user.email martin.blazik@gooddata.com +function git_alias() { + name=$1 + body="$2" + echo "git config --global alias.$name $body" + if [[ $DRY != "true" ]]; then + git config --global alias.$name "$body" + fi +} git config --global core.editor vim -git config --global alias.st status +git_alias st status -git config --global alias.br branch -git config --global alias.brd 'branch -d' -git config --global alias.brD 'branch -D' -git config --global alias.wipe $'!sh -c \'git push $1 --delete $2\' -' -git config --global alias.sw switch -git config --global alias.rename "branch -m" +git_alias br branch +git_alias brd 'branch -d' +git_alias brD 'branch -D' +git_alias wipe $'!sh -c \'git push $1 --delete $2\' -' +git_alias sw switch +git_alias rename "branch -m" -git config --global alias.co checkout -git config --global alias.cob "checkout -b" +git_alias co checkout +git_alias cob "checkout -b" -git config --global alias.ci commit -git config --global alias.cif "commit --fixup" -git config --global alias.cia "commit --amend" +git_alias ci commit +git_alias cif "commit --fixup" +git_alias cia "commit --amend" +git_alias cian "git commit --amend --no-edit -a" -git config --global alias.fe fetch -git config --global alias.fep "fetch -p" -git config --global alias.fea "fetch -p --all" +git_alias fe fetch +git_alias fep "fetch -p" +git_alias fea "fetch -p --all" -git config --global alias.pu $'!sh -c \'git push origin $(git branch --show-current)\'' -git config --global alias.puf $'!sh -c \'git push -f origin $(git branch --show-current)\'' +git_alias pu $'!sh -c \'git push origin $(git branch --show-current)\'' +git_alias puf $'!sh -c \'git push -f origin $(git branch --show-current)\'' -git config --global alias.rb rebase -git config --global alias.rbi "rebase -i --autosquash" -git config --global alias.rba "rebase --abort" -git config --global alias.rbc "rebase --continue" -git config --global alias.rbs "rebase --skip" -git config --global alias.rbm "rebase origin/master" +git_alias rb rebase +git_alias rbi "rebase -i --autosquash" +git_alias rba "rebase --abort" +git_alias rbc "rebase --continue" +git_alias rbs "rebase --skip" +git_alias rbm "rebase origin/master" -git config --global alias.unstage "reset HEAD --" -git config --global alias.undo "reset --soft HEAD^" +git_alias unstage "reset HEAD --" +git_alias undo "reset --soft HEAD^" -git config --global alias.ls "log --oneline" -git config --global alias.slog "log --stat" -git config --global alias.plog "log -p" -git config --global alias.lola "log --graph --decorate --pretty=oneline --abbrev-commit --all --date=local" +git_alias ls "log --oneline" +git_alias slog "log --stat" +git_alias plog "log -p" +git_alias lola "log --graph --decorate --pretty=oneline --abbrev-commit --all --date=local" + +git_alias aliases "config --get-regexp alias" +git_alias configs "config --list" -git config --global alias.aliases "config --get-regexp alias" -git config --global alias.configs "config --list"