refactor(git): refactor git aliases into a function, also adds new aliases for git add and push origin (#25)

Reviewed-on: https://codeberg.org/vlw/dotfiles/pulls/25
This commit is contained in:
Victor Westerlund 2025-06-06 08:34:32 +02:00
parent 24b007ed66
commit d7c6d4c783

View file

@ -45,6 +45,45 @@ cdll () {
cp -P -- "$1" && ll cp -P -- "$1" && ll
} }
# Short-hands for various git functions
gitf () {
case "$1" in
# Stage all changes and fall through to WIP commit
"aw")
git add .
gitf w
;;
# Clear local branches that have no upstream on remote (cleanup)
"c")
git fetch -p && git branch -vv | awk '/: gone]/{print $1}' | xargs git branch -D
;;
# Pull current branch from a remote (defaults to "origin"). "d" for download.
"d")
local remote="${2:-origin}"
git pull "$remote" $(git rev-parse --abbrev-ref HEAD)
;;
# Push commited changes (current branch) to a remote (defaults to "origin"). "u" for upload.
"u")
local remote="${2:-origin}"
git push --set-upstream "$remote" $(git rev-parse --abbrev-ref HEAD)
;;
# Create a git "Work in Progress" commit with timestamps
"w")
git commit -m "wip: $(date +%Y-%m-%dT%H:%M:%S%z) ($(date +%s))"
;;
*)
git status
;;
esac
}
# SSH to machine in debug mode at local.vlw.se # SSH to machine in debug mode at local.vlw.se
sshl () { sshl () {
# Set login name from first argument or default to current user # Set login name from first argument or default to current user
@ -53,17 +92,6 @@ sshl () {
ssh -p 2222 "$user"@local.vlw.se ssh -p 2222 "$user"@local.vlw.se
} }
# Create standard git WIP commit with timestamps
alias gitw="git commit -m \"wip: $(date +%Y-%m-%dT%H:%M:%S%z) ($(date +%s))\""
# Create a git WIP tag with the current timestamp. Prompt user for tag comment.
alias gitt="git tag -a 'wip-$(date +%s)'"
# Remove dropped upstream git branches from remote
alias gitc="git fetch -p && git branch -vv | awk '/: gone]/{print $1}' | xargs git branch -D"
# Shorthand git pull origin
alias gitp="git pull origin"
# Shorthand git status"
alias gits="git status"
# Generate random 16byte HEX # Generate random 16byte HEX
alias rng16="head -c 16 /dev/random | xxd -p" alias rng16="head -c 16 /dev/random | xxd -p"