|
I'm unclear of the terminology here, so my question may be a little bit ill-formed. I would like to be able to rebase a branch on top of the thing it was originally branched from by repeatedly moving it forward one step at a time. For example: Ordinarily, a rebase of I'd like to have a way to rebase the entire tree first onto I find this approach has a number of uses:
My current approach is to perform nightly builds against the projects in question, but if I forget something then I have to manually step things forward in time. Is there any way to get |
Replies: 2 comments 2 replies
|
Would |
|
This can probably be done using a shell script. Given the
|
This can probably be done using a shell script.
Given the
BASEand theBRANCHcontaining changes, here’s some pseudo code:COMMIT_IDin between the fork point and the newBASElocation (jj log -r "fork_point(BASE | BRANCH)..BASE" -T 'commit_id ++ "\n"' --no-graph --reversed):jj rebase -r "BASE..BRANCH" -o "$COMMIT_ID"jj log -r "BASE..BRANCH & conflicts()" --countas aCOUNTvariable:$COUNTis 0, continue the loop.$COUNTis greater than 0, the rebase introduced new conflicts.jj undoto go back to the last non-conflicted state.