Skip to content

Commit e2ebf42

Browse files
committed
jj alias tweaks
1 parent 3f63aa4 commit e2ebf42

2 files changed

Lines changed: 22 additions & 4 deletions

File tree

jjconfig.toml

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,14 +32,22 @@ merge-editor = "vscode"
3232
[ui.diff]
3333
format = "git"
3434

35+
[revset-aliases]
36+
'closest_bookmark(to)' = 'heads(::to & bookmarks())'
37+
# Treat commits not authored by me as immutable. The `trunk().. &` bit is an
38+
# optimization to scan for non-`mine()` commits only among commits that are not
39+
# in `trunk()`.
40+
# https://jj-vcs.github.io/jj/v0.26.0/config/#set-of-immutable-commits
41+
"immutable_heads()" = "builtin_immutable_heads() | (trunk().. & ~mine())"
42+
3543
[aliases]
3644
d = ["diff"]
3745
dm = ["describe", "-m"]
3846
dt = ["diff", "--tool", "difft"]
3947
rp = ["log", "--no-graph", "-T", "commit_id"]
4048
ds = ["diff", "--stat"]
41-
r = ["log"]
4249
cm = ["commit", "-m"]
50+
tug = ["bookmark", "move", "--from", "closest_bookmark(@)", "--to", "@-"]
4351

4452
[merge-tools.difft]
4553
diff-args = ["--color=always", "$left", "$right"]

zprofile

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ alias gss='git show --stat'
1616

1717
alias js="jj st"
1818
alias jd="jj d"
19-
alias jr="jj r -n 10"
19+
alias jr="jj log -n 10"
2020
alias jds="jj ds"
2121
alias jf="jj git fetch"
2222
alias jp="jj git push"
@@ -36,8 +36,18 @@ function curr_bookmark {
3636
}
3737

3838
alias jdr='jj diff -f "$(curr_bookmark)@origin"'
39-
# set current bookmark (will default to -r @)
40-
alias jbs='jj bookmark set "$(curr_bookmark)"'
39+
alias jbs='jj tug'
40+
41+
# when you accidentally edit a revision with a pushed bookmark, this puts the
42+
# changes in a new commit and resets the bookmark to the origin version
43+
function jsr() {
44+
local b=$(curr_bookmark)
45+
jj new "$b"@origin
46+
jj restore -f "$b"
47+
jj abandon "$b"
48+
jj bookmark set "$b" -r "$b"@origin
49+
}
50+
4151
# jj abandon branch
4252
function jab() {
4353
jj abandon -r "trunk()..$1" && jj bookmark forget "$1"

0 commit comments

Comments
 (0)