← スキル一覧に戻る

jujutsu
by tkersey
public dot files
⭐ 37🍴 0📅 2026年1月23日
SKILL.md
name: jujutsu description: Jujutsu (jj) Git-compatible VCS. Use for any version-control work (status/diff/commit/branch/rebase/merge/etc.).
Jujutsu (jj)
Rule
If you think “git”, use jujutsu.
When to trigger
Use this skill whenever version control is in play, even if the user doesn’t say “git”.
Tripwires:
- Commands: status, diff, log/history, add/stage, commit, branch, merge, rebase, stash, tag, checkout/switch, cherry-pick, revert, reset, amend, squash, conflict, pull/push/fetch, clone, submodule, blame, bisect.
- Terms: staged/unstaged, HEAD, origin/upstream, clean/dirty, detached.
JJ-first policy
- Prefer
jjfor VCS writes. - If
jjis missing, ask to install it or request permission to fall back togit. - In colocated repos, avoid mutating with
gitunless you know what you’re doing (git may appear detached).
Core concepts
- The working copy is a commit:
@is the working-copy commit,@-its parent. - Bookmarks are branch-like pointers:
jj bookmark …. - Workspaces are git-worktree-like:
jj workspace add ….- There is no
jj workspace usecommand. To switch,cdinto the workspace directory.
- There is no
Git interop / colocation
- New repo backed by Git:
jj git init <name>. - Clone a Git remote:
jj git clone <url> [dest]. - Existing Git repo:
jj git init --git-repo=<path> <name>. - Colocation controls:
jj git colocation status|enable|disable.
Common commands
Inspection:
jj statusjj logjj diffjj op log
Editing changes:
jj new <rev>jj describe [<rev>]jj edit <rev>jj commit
Move/rewrite history:
jj squashjj splitjj rebase -b <bookmark> -d <dest>
Bookmarks:
jj bookmark listjj bookmark create <name> -r <rev>jj bookmark move <name> --to <rev>jj bookmark delete <name>
Undo:
jj undojj redo
Command mapping (git -> jj)
| Git | Jujutsu | Notes |
|---|---|---|
git status | jj status | |
git diff | jj diff | |
git log | jj log | |
git add <path> | jj file track <path> | JJ auto-tracks edits; use track for new paths. |
git restore <path> / git checkout -- <path> | jj restore <path> | Restores from parent into the working copy. |
git commit -m "msg" | jj commit -m "msg" | |
git commit --amend -m "msg" | jj describe -m "msg" | Edits current change description. |
git branch | jj bookmark list | |
git branch <name> | jj bookmark create <name> -r @ | |
git branch -d <name> | jj bookmark delete <name> | |
git switch <name> / git checkout <rev> | jj edit <rev> | Moves working copy to an existing change. |
git switch -c <name> | jj new + jj bookmark create <name> -r @ | Two-step in jj. |
git merge <branch> | jj new @ <branch> | Creates a merge commit with both parents. |
git rebase <upstream> | jj rebase -b @ -o <upstream> | Rebase current branch onto upstream. |
git pull | jj git fetch + jj rebase -b @ -o <remote-bookmark> | Fetch then rebase onto e.g. origin/main. |
git fetch | jj git fetch | |
git push | jj git push |
Workspace switching (correct usage)
- List workspaces:
jj workspace list - Add a workspace:
jj workspace add <path> [-r <rev>] - Forget a workspace:
jj workspace forget <path> - Switch workspaces by changing directories:
cd <path>
Safety notes
jjhas no “current branch”; bookmarks don’t auto-advance.- Avoid interactive flags (like
-i) in non-interactive harnesses.
スコア
総合スコア
60/100
リポジトリの品質指標に基づく評価
✓SKILL.md
SKILL.mdファイルが含まれている
+20
✓LICENSE
ライセンスが設定されている
+10
○説明文
100文字以上の説明がある
0/10
○人気
GitHub Stars 100以上
0/15
○最近の活動
3ヶ月以内に更新がある
0/10
○フォーク
10回以上フォークされている
0/5
✓Issue管理
オープンIssueが50未満
+5
✓言語
プログラミング言語が設定されている
+5
○タグ
1つ以上のタグが設定されている
0/5
レビュー
💬
レビュー機能は近日公開予定です