mirror of
https://codeberg.org/muon/home.git
synced 2025-12-06 08:07:45 +00:00
69 lines
2 KiB
Nix
69 lines
2 KiB
Nix
{
|
|
config,
|
|
pkgs,
|
|
...
|
|
}: {
|
|
home.packages = with pkgs; [zsh-forgit gitflow];
|
|
programs.git = {
|
|
enable = true;
|
|
userName = "muon";
|
|
userEmail = "admin@muon.host";
|
|
ignores = [
|
|
".cache/"
|
|
".DS_Store"
|
|
".idea/"
|
|
"*.swp"
|
|
"*.elc"
|
|
"auto-save-list"
|
|
".direnv/"
|
|
"node_modules"
|
|
"result"
|
|
"result-*"
|
|
];
|
|
extraConfig = {
|
|
safe.directory = "${builtins.getEnv "XDG_CONFIG_HOME"}/.config/dotfiles";
|
|
init = {defaultBranch = "main";};
|
|
delta = {
|
|
line-numbers = true;
|
|
};
|
|
branch.autosetupmerge = "true";
|
|
push.default = "current";
|
|
merge.stat = "true";
|
|
core.whitespace = "fix,-indent-with-non-tab,trailing-space,cr-at-eol";
|
|
repack.usedeltabaseoffset = "true";
|
|
pull.ff = "only";
|
|
rebase = {
|
|
autoSquash = true;
|
|
autoStash = true;
|
|
};
|
|
rerere = {
|
|
autoupdate = true;
|
|
enabled = true;
|
|
};
|
|
};
|
|
lfs.enable = true;
|
|
delta.enable = true;
|
|
aliases = {
|
|
co = "checkout";
|
|
c = "commit -m";
|
|
ca = "commit -am";
|
|
graph = "log --all --decorate --graph --oneline";
|
|
l = "log";
|
|
r = "rebase";
|
|
s = "status --short";
|
|
ss = "status";
|
|
d = "diff";
|
|
ps = "!git push origin $(git rev-parse --abbrev-ref HEAD)";
|
|
pl = "!git pull origin $(git rev-parse --abbrev-ref HEAD)";
|
|
af = "!git add $(git ls-files -m -o --exclude-standard | sk -m)";
|
|
st = "status";
|
|
br = "branch";
|
|
df = "!git hist | peco | awk '{print $2}' | xargs -I {} git diff {}^ {}";
|
|
hist = ''
|
|
log --pretty=format:"%Cgreen%h %Creset%cd %Cblue[%cn] %Creset%s%C(yellow)%d%C(reset)" --graph --date=relative --decorate --all'';
|
|
llog = ''
|
|
log --graph --name-status --pretty=format:"%C(red)%h %C(reset)(%cd) %C(green)%an %Creset%s %C(yellow)%d%Creset" --date=relative'';
|
|
edit-unmerged = "!f() { git ls-files --unmerged | cut -f2 | sort -u ; }; hx `f`";
|
|
};
|
|
};
|
|
}
|