system/users/jan/git/default.nix

100 lines
2.3 KiB
Nix

{ pkgs, packagesPath, ... }:
{
home.packages = [
pkgs.git-crypt
(pkgs.callPackage (packagesPath + /git-crypt-rm-gpg-user) { })
];
programs.git = {
enable = true;
lfs.enable = true;
userEmail = "dmitriy@pleshevski.ru";
userName = "Dmitriy Pleshevskiy";
signing = {
key = "17041163DA10A9A2";
signByDefault = true;
};
includes =
import ./myrepo.secret.nix
# My main account was suspended due to sanctions
++ import ./github.secret.nix
# Work account
++ import ./gitlab.secret.nix;
ignores = [ ".nlsp-settings" ];
extraConfig = {
init.defaultBranch = "main";
pull.rebase = true;
advice.skippedCherryPicks = false;
};
aliases = {
co = "switch";
cob = "switch -c";
cobf = "switch -C";
st = "status -sb";
d = "diff";
dc = "diff --cached";
aa = "add .";
ai = "add -i";
c = "commit";
cm = "commit -m";
ca = "commit --amend";
cam = "commit --amend -m";
can = "commit --amend --no-edit";
p = "push";
pt = "push --tags";
po = "push origin";
pot = "push origin --tags";
pf = "push --force-with-lease";
pfo = "push --force-with-lease origin";
pl = "pull";
plo = "pull origin";
plup = "pull upstream";
f = "fetch";
fo = "fetch origin";
foa = "fetch --all";
foap = "fetch --all --prune";
rb = "rebase";
rbi = "rebase -i";
rbc = "rebase --continue";
rba = "rebase --abort";
ch = "cherry-pick";
chi = "cherry-pick -i";
chc = "cherry-pick --continue";
cha = "cherry-pick --abort";
re = "restore";
res = "restore --staged";
resw = "restore --staged --worktree";
rls = "ls-remote --heads";
rlso = "ls-remote --heads origin";
rlsu = "ls-remote --heads upstream";
lo = "log --pretty=oneline";
los = "log --pretty='format:%s'";
sma = "submodule add";
smui = "submodule update --init";
s = "stash";
sm = "stash push -m";
sl = "stash list";
sa = "stash apply";
sai = "stash apply --index";
sp = "stash pop";
spi = "stash pop --index";
t = "tag";
tf = "tag --force";
};
};
}