using-jj

Manage Git-like history with JJ commits, bookmarks, rebasing, and GitHub PR workflows.

1|Updated Nov 22, 2024
One-click install
npx skills add https://github.com/rjcnd105/hj-dotfiles --skill using-jj
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: using-jj
Source: https://github.com/rjcnd105/hj-dotfiles/tree/main/files/workspace/.config/opencode/skill/jj
Command: npx skills add https://github.com/rjcnd105/hj-dotfiles --skill using-jj

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

JJ provides a Git-like history manager where commits are mutable Change IDs, enabling safer rewriting, squashing, and PR workflows without losing context.

Core Features & Use Cases

  • Mutable history: Change IDs persist across rewrites to keep history intact during rebases or amendments.
  • Branching & PRs: Bookmarks act as branches, integrated with GitHub PR workflows.
  • Team collaboration: Streamline collaborative feature work with predictable history and review processes.

Quick Start

Explain how to create a new feature using JJ: make changes in your working copy, describe the change with jj describe -m "feat: ...", create a bookmark with jj bookmark create feat-branch, push with jj git push, and open a PR with gh pr create.

Frequently Asked Questions about using-jj

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I manage Git history rewriting without losing commit context?

Using Jujutsu (JJ) allows you to manage Git history rewriting with mutable Change IDs. These Change IDs persist across rebases and amendments, keeping your project history intact and predictable.

What is the best way to create a feature branch and open a GitHub PR using JJ?

To open a GitHub PR using JJ, describe your working copy changes with jj describe, create a bookmark acting as a branch with jj bookmark create, push using jj git push, and finally open the pull request with gh pr create.

How do bookmarks work for branching in Jujutsu compared to standard Git branches?

In Jujutsu, bookmarks act as branches to integrate with GitHub PR workflows. They provide a mutable branching mechanism that streamlines collaborative feature work and team review processes without losing context.

When do I need to use Change IDs in my version control workflow?

You need Change IDs when you require safer history rewriting, squashing, and rebasing. They persist across modifications to ensure your history remains intact during collaborative feature development.

Does Jujutsu work with existing Git-enabled projects and local worktrees?

Yes, Jujutsu works with JJ-enabled projects requiring history rewriting and collaboration. It manages Git-like history directly from your local worktrees to GitHub PRs using standard commands like jj git push.

Can I squash and rebase commits safely when using Jujutsu for team collaboration?

Yes, you can safely squash and rebase commits using Jujutsu for team collaboration. Mutable Change IDs persist across rewrites, ensuring predictable history and streamlined review processes without losing context.