liveBook · Manning

Versioning

As explained in Building User-Friendly DSLs

The practice of recording and managing successive versions of files or other artifacts.

Version control records and manages successive changes to DSL content, enabling collaboration, release management, auditing, and regulatory compliance. section 10.1

Distributed version control systems organize change through:

  • Commits, which represent the state of code at a point in time and carry an identity such as a Git SHA hash. section 10.1
  • Branches, which are named sequences of commits for independent feature or bug-fixing work. section 10.1
  • Tags, which associate a string with a particular commit to identify a version. section 10.1
  • A collaborative workflow that branches from a mainline, shares committed changes, reviews completed work, and merges it back. section 10.1

Managing changing DSL content

A team can place DSL content under Git version control, develop changes on feature or bug-fixing branches, review them, and merge approved work into the mainline. section 10.1

Figure 10.2 The main concepts of a DVCS, and a typical interaction
figure

Use the diagram to navigate the relationships among commits, branches, tags, and typical distributed workflows. section 10.1

How Building User-Friendly DSLs covers it

How deep it goes
Defines commits, branches, tags, and distributed workflows, while noting that accumulated changes can make merging challenging.
Examples
Uses Git, feature and bug-fixing branches, SHA-identified commits, version tags, and a Gitflow-style workflow.
What you can do after
Apply Git-based distributed workflows to branch, commit, review, merge, and version DSL changes.
How it connects
Connects distributed version control with Git, commits, branches, tags, code review, merging, release management, and auditing.

Also explained in

Compare how 25 books explain versioning →

Related concepts

This explainer was generated by Manning's knowledge graph from the text of Building User-Friendly DSLs. The section links point to the parts of the book it draws on.