Describe CEDVocabulary here.

Changeset Evolution - Vocabulary

/!\ This page is intended for developer

This pages gather data from discussion about the named use within the ChangesetEvolution concept.

Troubles

"troubled" changeset and troubles

Evolving history can introduce problems that need to be solved.:

Changeset adjective

Concept name

pro

con

status

troubled

Troubles

in use

conflicted

conflicts?

invalid

?

unevolved

unevolution?

dirty

dirtiness?

"unstable" changeset and "instability"

{i} Related documentation

Instability happens when a changesets with descendant is rewritten. The non-obsolete descendant of the now obsolete changeset are said "unstable changesets".

A Changeset is "unstable" because either:

Automatic resolution of instability if node by rebasing the unstable changesets on the latest known successors of its obsolete parent. (Changeset unstable because the parent is unstable needs to wait for their unstable parent to be stabilized before we can solve them.)

Changeset adjective

Concept name

pro

con

status

unstable

instability

in use

unsettled

?

uprooted

?

"Bumped" changeset and "bumping"

{i} related documentation

A changeset is says "Bumped" when it is the successors of a public changeset. The public changeset cannot be obsoleted or hidden anymore so both the old and new version exists. This usually happens when someone is reworking a changeset while somewhere else is publishing it at the same time elsewhere. The two actions are eventually gathered somewhere and evolve detect there is an issue. To some extend "bumping" can be seens as "divergence with your past" as opposed to "divergence with another rewriting that happened in parallel).

So in summary bumped changesets are:

* superseding something public, * trying to obsolete something that cannot be obsolete, * trying to bring "a change" but is too late to do so,

The automated solution for this is to create a new changeset with the diff between the public and the successors (The diff introduced by the amend).

Changeset adjective

Concept name

pro

con

status

latecomer

?

old abandoned name

bumped

bumping

in use

invalidated

invalidation?

behind

?

superseded

?

lagging

lagginess?

obviated

?

"divergent" changeset and "divergence"

Divergence happens when two changesets claims to superseded to the same changesets. The canonical way to do this is to have two people in two different repo rewriting the same changeset. The divergence is detected when one pull from the other. (there is currently other eay way to get divergence locally).

* Divergence denote that two (or more) different and independent "edit" happened on the same changeset, * No version can be said "better/newer" than the other one, so both are "alive" at the same time, duplicating all the common changes, * There is at least on latest common precursors that both divergent changeset claims to rewrite, They are said to be divergent from that latest common precursors. * A divergent changeset is divergent with the other non-obsolete changeset.

The automated way to solve this, is to merge the two divergent changeset using the precursors they are divergent from as a base.

Changeset adjective

Concept name

pro

con

status

unstable

instability

in use

unsettled

?

uprooted

?

Obsolescence graph

Obsolescence markers create an orthogonal graph between the changesets that tracks whant changeset gets rewritten into which other.

"Successor"

Noun

verb

pro

con

status

Successor

supersede

in use

Successor

suceed

in use

replacement

replace

next

?

"Precursor"

Noun

verb

pro

con

status

precursor

precede?

in use

original

?

predecessor

precede

progenitor

?

previous

?

prior

?

antecedent

?

== See also ==


CategoryDeveloper CategoryEvolution