Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

FR: Include an option to jj new and jj rebase to remove redundant parents #5361

Open
samueltardieu opened this issue Jan 14, 2025 · 1 comment
Labels
enhancement New feature or request

Comments

@samueltardieu
Copy link
Contributor

Is your feature request related to a problem? Please describe.
On some projects, I use a "super-merge" model, where a dev-merge bookmark is based on the project main branch + all my PR waiting to be reviewed and merged + some third-party PR of interests that I want to integrate as well.

I rebase this bookmark every time I start working, and because some PR may have been merged at this stage, in addition to the main branch advancing, I have to systematically use jj simplify-parents -s dev-merge after I use jj rebase -s dev-merge -d all:dev-merge- -d main in order to clean the tree.

Also, sometimes, I want to try a few third-party PRs and see how they interact with the current main branch. Here also, after doing a jj new -d main -d pr1@origin1 -d pr2@origin2, I do a jj simplify-parents.

Describe the solution you'd like
I would like to have an extra flag on jj rebase and jj new, which would call the equivalent of jj simplify-parents -r 'reachable(C, mutable())' where C is the commit(s) being rebased or create.

Describe alternatives you've considered
I've been using two commands in succession right now.

Additional context
To give an example, here is my current development state for Clippy, I think it easy to understand why simplifying the tree is important for me:

2025-01-14-151741_921x720_scrot

@bnjmnt4n
Copy link
Member

Related FR: #4708

@PhilipMetzger PhilipMetzger added the enhancement New feature or request label Jan 14, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

3 participants