This makes it possible to start using internal and archived phases
on an existing repository,
if the following is set in the configuration:
[format] internal-phase=yes
( )
hg-reviewers |
This makes it possible to start using internal and archived phases
on an existing repository,
if the following is set in the configuration:
[format] internal-phase=yes
No Linters Available |
No Unit Test Coverage |
beware that the feature is not ready for prime time as some remaining issue/question needs to be solved/answered, most notably its interraction with distributed obsolescence. I remember doing a write up about this for the sprint last november but I cannot find it.
It would indeed be interesting to see that writeup. This is the feature we miss the most to be able to enable obsolescence for all our users.
Regarding this change itself: I figured it would not harm to add upgrade-support, as it only becomes visible when the experimental parameter has been set.
If obsolescence is enabled, the behaviour of 'strip' is not ideal. What users typically want is the behaviour of 'hg strip --soft', as the regular 'hg strip' makes older revisions visible again.
Which is exactly the kind of behavior with hg strip --soft that will cause probleme with evolution :-D
It looks like your users wants hg prune, do they not ?
It sounded to me like 'hg prune' and 'hg strip --soft' both covered the same use case.
The main benefit to me seemed that 'hg strip --soft' doesn't require me to enable evolve for all our users. I would like to have obsolescence markers for all our users, but without a properly working 'hg strip', that wasn't possible.
What are you trying to achive with hg strip --soft that you cannot achieve with evolve. And what are the things blokcing you from enabling evolution for all your users ?
I would like to have obsolescence markers for all our users, but without a properly working 'hg strip', that wasn't possible.
hg strip is properly working. It is doing exactly what it is documented to do :-)
hg strip --soft with evolution -is- not properly working as it is going to hide content, without hiding the associated obsmarkers, leading to indecipherable situation for users. So mixing the two is not the way to go (and one of the reason the feature is still experimental).
We can achieve everything with evolve, but that requires that we provide evolve everywhere and make sure it's in line with the Mercurial version used.
If evolve (or the 'hg prune' part) was shipped with Mercurial, we would probably have it enabled already.
I know that sounds like we just need to get our infrastructure set up to handle this properly (and to some degree, that's correct), but for us, it's just additional hoops to jump through, and more parts of the infrastructure that need to be synced with each other.
(If you like, we can have a call to discuss further.)
I would like to have obsolescence markers for all our users, but without a properly working 'hg strip', that wasn't possible.
hg strip is properly working. It is doing exactly what it is documented to do :-)
Agreed, but it's somewhat confusing for our users.
hg strip --soft with evolution -is- not properly working as it is going to hide content, without hiding the associated obsmarkers, leading to indecipherable situation for users. So mixing the two is not the way to go (and one of the reason the feature is still experimental).
Ok, that makes sense, thanks for clarifying.