summaryrefslogtreecommitdiff
path: root/modules/common/git.nix
diff options
context:
space:
mode:
Diffstat (limited to 'modules/common/git.nix')
-rw-r--r--modules/common/git.nix35
1 files changed, 26 insertions, 9 deletions
diff --git a/modules/common/git.nix b/modules/common/git.nix
index de401fb..da33eb2 100644
--- a/modules/common/git.nix
+++ b/modules/common/git.nix
@@ -59,17 +59,31 @@ in {
extraConfig =
{
- advice.detachedHead = false;
color.ui = true;
core.whitespace = "trailing-space";
+ init.defaultBranch = "master";
+ status.submoduleSummary = true;
+ commit.verbose = 1;
+ push.autoSetupRemote = true;
+ pull.rebase = true;
+ rebase = {
+ autoStash = true;
+ autoSquash = true;
+ };
diff = {
mnemonicPrefix = true;
renames = "copies";
submodule = "log";
};
- init.defaultBranch = "master";
- push.autoSetupRemote = true;
- status.submoduleSummary = true;
+ submodule.recurse = true;
+ sendemail = rec {
+ smtpServer = my.domain.shire;
+ smtpUser = "${my.username}@${smtpServer}";
+ smtpEncryption = "ssl";
+ smtpServerPort = 465;
+ annotate = true;
+ confirm = "always";
+ };
github.user = my.username;
gitlab.user = my.username;
}
@@ -95,10 +109,14 @@ in {
git = "${config.hm.programs.git.package}/bin/git";
curl = "${pkgs.curl}/bin/curl";
in {
- fuck = "!${git} reset --hard && ${git} clean -fdx";
+ amend = "commit --amend";
+ cat = "cat-file -p";
+ fast = "clone --depth=1";
+ fixup = "commit --fixup";
+ fuck = "!${git} reset --hard && ${git} clean --force -dx";
+ get = "pull --all --recurse-submodules --autostash";
gud = ''commit -m "git gud"'';
- review = "!${git} lg @{push}..";
- reword = "commit --amend";
+ refresh = "clean --force -X";
tree = "log --graph --date=relative --pretty=tformat:'%Cred%h%Creset -%C(auto)%d%Creset %s %Cgreen(%an %ad)%Creset'";
uncommit = "reset --soft HEAD~1";
untrack = "rm --cache --";
@@ -106,8 +124,7 @@ in {
};
# All helper tools/editor generated files should go here. This must be
- # kept relatively clean and void of any project-specific residual
- # files.
+ # kept void of any project-specific or residual files.
ignores = [
"*~"
".DS_Store"