5 Commits

Author SHA1 Message Date
Yuya Nishihara
ce6119a024 tests: insert insta::allow_duplicates! { .. } per snapshot
This might be a bug of insta, but new snapshots were associated with wrong
assertion blocks if allow_duplicates! { .. } contained multiple assertions.
2025-01-10 01:00:09 +00:00
Benjamin Tan
ee37409c5e cli: simplify-parents: add default revsets.simplify-parents config
This adds a new `revsets.simplify-parents` configuration option (similar
to `revsets.fix`) which serves as the default revset for `jj
simplify-parents` if no `--source` or `--revisions` arguments are
provided.
2024-11-26 13:19:25 +08:00
Benjamin Tan
4f2e72a140 cli: simplify-parents: avoid multiple rebases of the same commits
The previous iteration of `jj simplify-parents` would only reparent the
commits in the target set in the `MutableRepo::transform_descendants`
callback. The subsequent `MutableRepo::rebase_descendants` call invoked
when the transaction is committed would then rebase all descendants of
the target set, which includes the commits in the target set again.

This commit updates the `MutableRepo::transform_descendants` callback to
perform rebasing of all descendants within the callback. All descendants
of the target set will only be rebased at most once.
2024-11-22 20:23:03 +08:00
Benjamin Tan
1ae8f0c77a tests: add additional test case for jj simplify-parents
This test shows that the current implementation of `jj simplify-parents`
perform unnecessary rebases of descendant commits.
2024-11-22 20:23:03 +08:00
dploch
95344f9e05 simplify-parents: add a command to remove redundant parents 2024-10-07 20:15:33 -04:00