Release status: experimental
|Implementation||User rights, Page action, Special page|
|Description||Support article branching, merge, batch synchronization, and conflict resolution workflows|
|Author(s)||Adam Roses Wight|
|MediaWiki||1.19.0 or higher|
|License||GPL 2.0 or later|
|Check usage and version matrix; stats|
|Bugs: list open list all report|
- Please contribute to discussion at Requests_for_comment/Nonlinear_versioning
- Implementation to branch revisions is written and unit tested.
- Minimal UI to display branches in revision history.
- Need to find a mechanism to determine whether the current editor can alter trunk, and set a flag which determines how hooks operate.
- Probably need a new hook in core which will prevent revision creation from updating the "latest" pointer.
- No UI to perform branching.
- Augment the functionality of Extension:FlaggedRevs and deprecate core page protection. Try to present the same workflow and API whenever possible.
- Integrate with a second extension, which is a UI on top of abstract version control. (show item at revision or as delta, show/hide metadata and its history, alter non-destructively). This VCS extension must be compatible with Git as well.
- Hooks: add revision; alter (builtin f(): save revision and record of change)
- User roles: public (add revision, annotate/link, view), owner (*),
- Branches do not have owners, when there are name collisions, other, determinate methods result in what is displayed. Revisions do have an owner. Mention that anonymous edits lose formal ownership.
- Extension adds metadata about revisions, which is namespaced under "Nonlinear".
- Target multiple db backends, since this is meant for hybrid offline / central server sharing.