1
Fork 0
satellite/modules/applications/git/aliases.nix

40 lines
1.1 KiB
Nix
Raw Normal View History

2020-04-08 18:36:58 +02:00
# Most of these are copied from: https://github.com/Brettm12345/nixos-config/blob/1400c71bce/modules/applications/git/aliases.nix
let
git = text: ''"!git ${text}"'';
f = text: ''"!f(){ ${text} };f"'';
in {
# Unstage all changes
unstage = "reset HEAD --";
# Ammend to the last commit
amend = "commit --amend -C HEAD";
# List branches sorted by last modified
b = git
"for-each-ref --sort='-authordate' --format='%(authordate)%09%(objectname:short)%09%(refname)' refs/heads | sed -e 's-refs/heads/--'";
# Test merge for conflicts before merging
mergetest = f ''
git merge --no-commit --no-ff "$1"; git merge --abort; echo "Merge aborted";'';
# Get description of current repo
description = git
''config --get "branch.$(git rev-parse --abbrev-ref HEAD).description"'';
# Show authors
authors = ''
"!f() { git log --no-merges --pretty='format:%<(26)%an <%ae>' --author "$*" | sort | uniq# }# f"'';
a = "add";
cm = "commit --message";
caa = "commit --ammend";
cl = "clone";
co = "checkout";
col = "checkout @{-1}";
cob = "checkout -b";
st = "stash";
pop = "stash pop";
t = "tag";
}