Compare commits
6 commits
1cce1a9a38
...
b3124eb582
Author | SHA1 | Date | |
---|---|---|---|
b3124eb582 | |||
11d6a08bcc | |||
bfb4fadee0 | |||
bcd93eb237 | |||
0b6f0c235d | |||
4aec6b9ba3 |
10 changed files with 68 additions and 13 deletions
|
@ -4,7 +4,7 @@
|
||||||
# a development environment based on git and nvim.
|
# a development environment based on git and nvim.
|
||||||
|
|
||||||
[base]
|
[base]
|
||||||
depends = ["shell", "git", "nvim", "scripts", "ssh", "terminal", "bootstrap"]
|
depends = ["shell", "vcs", "nvim", "scripts", "ssh", "terminal", "bootstrap"]
|
||||||
|
|
||||||
[bootstrap.files]
|
[bootstrap.files]
|
||||||
"bootstrap/dotlink.sh" = "~/.config/sh/alias.d/dotlink.sh"
|
"bootstrap/dotlink.sh" = "~/.config/sh/alias.d/dotlink.sh"
|
||||||
|
@ -13,9 +13,13 @@ depends = ["shell", "git", "nvim", "scripts", "ssh", "terminal", "bootstrap"]
|
||||||
"sh/README.md" = { target = "~/NOWHERE", type = "symbolic", if = "false" }
|
"sh/README.md" = { target = "~/NOWHERE", type = "symbolic", if = "false" }
|
||||||
sh = "~"
|
sh = "~"
|
||||||
|
|
||||||
[git.files]
|
[vcs.files]
|
||||||
"git/README.md" = { target = "~/NOWHERE", type = "symbolic", if = "false" }
|
"vcs/README.md" = { target = "~/NOWHERE", type = "symbolic", if = "false" }
|
||||||
git = "~"
|
"vcs/git" = "~/.config"
|
||||||
|
"vcs/jj" = "~/.config"
|
||||||
|
"vcs/gitignore/config" = "~/.config"
|
||||||
|
"vcs/gitignore/local" = "~/.local"
|
||||||
|
vcs = "~"
|
||||||
|
|
||||||
[nvim.files]
|
[nvim.files]
|
||||||
"nvim/.config/nvim/spell/de.utf-8.add.spl" = { target = "~/.config/nvim/spell/de.utf-8.add.spl", type = "symbolic" }
|
"nvim/.config/nvim/spell/de.utf-8.add.spl" = { target = "~/.config/nvim/spell/de.utf-8.add.spl", type = "symbolic" }
|
||||||
|
|
|
@ -15,13 +15,20 @@ return {
|
||||||
event = { "BufEnter" },
|
event = { "BufEnter" },
|
||||||
}, -- integrate file manager
|
}, -- integrate file manager
|
||||||
{
|
{
|
||||||
"nvim-tree/nvim-tree.lua", -- integrate file tree
|
"nvim-neo-tree/neo-tree.nvim",
|
||||||
config = true,
|
dependencies = {
|
||||||
dependencies = { "nvim-tree/nvim-web-devicons", config = true },
|
"MunifTanjim/nui.nvim",
|
||||||
cmd = "NvimTreeToggle",
|
"nvim-lua/plenary.nvim",
|
||||||
keys = {
|
{ "nvim-tree/nvim-web-devicons", optional = true },
|
||||||
{ "<leader>se", "<cmd>NvimTreeToggle<cr>", desc = "filetree", silent = true },
|
|
||||||
},
|
},
|
||||||
|
cmd = "Neotree",
|
||||||
|
opts = {
|
||||||
|
source_selector = { winbar = true },
|
||||||
|
},
|
||||||
|
keys = {
|
||||||
|
{ "<leader>se", "<cmd>Neotree toggle left<cr>", desc = "filetree", silent = true },
|
||||||
|
},
|
||||||
|
lazy = false
|
||||||
},
|
},
|
||||||
{ "MagicDuck/grug-far.nvim", lazy = false, opts = {} },
|
{ "MagicDuck/grug-far.nvim", lazy = false, opts = {} },
|
||||||
-- fuzzy matching picker
|
-- fuzzy matching picker
|
||||||
|
|
|
@ -1,15 +1,17 @@
|
||||||
# Git module
|
# Version control software module
|
||||||
|
|
||||||
[git](https://git-scm.com/) - a distributed version control system
|
[git](https://git-scm.com/) - a distributed version control system
|
||||||
|
[jujutsu](https://martinvonz.github.io/jj/latest/) - a change-based version control system
|
||||||
|
|
||||||
## What's in this module
|
## What's in this module
|
||||||
|
|
||||||
[[_TOC_]]
|
[[_TOC_]]
|
||||||
|
|
||||||
## Global git settings
|
## Global vcs settings
|
||||||
|
|
||||||
This is probably the first thing that needs to be customized, since it points to a different identity for each git user.
|
This are probably the first things that need to be customized, since it points to a different identity for each git user.
|
||||||
I sign all my commits by default, so take out the corresponding lines if you don't, or exchange it with your gpg key.
|
I sign all my commits by default, so take out the corresponding lines if you don't, or exchange it with your gpg key.
|
||||||
|
Similarly for jujutsu, change the identity and remove the lines concerning gpg signing if you don't use it.
|
||||||
|
|
||||||
Git will rewrite any remotes using http(s) to use the ssh notation for pushes to github and gitlab so that, even if you set up the repository using an https url you can utilize your usual ssh key for pushing.
|
Git will rewrite any remotes using http(s) to use the ssh notation for pushes to github and gitlab so that, even if you set up the repository using an https url you can utilize your usual ssh key for pushing.
|
||||||
|
|
12
vcs/jj/jj/config.toml
Normal file
12
vcs/jj/jj/config.toml
Normal file
|
@ -0,0 +1,12 @@
|
||||||
|
[user]
|
||||||
|
email = "marty.oehme@gmail.com"
|
||||||
|
name = "Marty Oehme"
|
||||||
|
|
||||||
|
[signing]
|
||||||
|
sign-all = true
|
||||||
|
backend = "gpg"
|
||||||
|
key = "73BA40D5AFAF49C9"
|
||||||
|
|
||||||
|
[ui]
|
||||||
|
default-command = "log"
|
||||||
|
diff-editor = ["nvim", "-c", "DiffEditor $left $right $output"]
|
30
vcs/jj/sh/alias.d/jj.sh
Normal file
30
vcs/jj/sh/alias.d/jj.sh
Normal file
|
@ -0,0 +1,30 @@
|
||||||
|
#!/usr/bin/env sh
|
||||||
|
|
||||||
|
if ! exist jj; then
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
alias j='jj' # necessary for a thing as easy to type?
|
||||||
|
if exist lazyjj; then
|
||||||
|
alias lj="lazyjj"
|
||||||
|
fi
|
||||||
|
alias js="jj status"
|
||||||
|
|
||||||
|
alias jd="jj describe"
|
||||||
|
alias jn="jj new"
|
||||||
|
alias jc="jj commit"
|
||||||
|
|
||||||
|
alias jl='jj log'
|
||||||
|
alias jlo='jj log --summary'
|
||||||
|
alias jloo='jj log --patch'
|
||||||
|
alias jo="jj op log"
|
||||||
|
|
||||||
|
alias jss="jj squash"
|
||||||
|
alias jsi="jj squash --interactive"
|
||||||
|
|
||||||
|
alias je="jj edit"
|
||||||
|
alias jee="jj next --edit"
|
||||||
|
|
||||||
|
alias jun="jj undo"
|
||||||
|
|
||||||
|
alias jp="jj git push"
|
Loading…
Reference in a new issue