Skip to content

Create a good changeset

Changesets are the heart of any version control system, and making good changesets is important to the maintainability of a codebase.

A code changeset is a group of related file modifications or a set of changes that are committed at one time to a version control system’s repository. On GitHub, “changeset” refers to the commit(s) that are included in a single pull request.

Accurately describing the changes that are included in a changeset is very important for all individuals who will review or maintain the code.

  • Bundle related changes together: It is much easier to trace changes if related changes are grouped together. Rather than splitting a logical change into many separate commits, related changes should be combined.
  • Make changesets atomic: An atomic commit can be easily rolled back without risk—including all related changes—without the need to analyze the potential interdependencies of neighboring commits.
  • Clearly communicate what changes were made and why: Each changeset should include a description of the exact differences between the two successive versions in the version control system. When writing a description for a changeset, use similar guidelines as writing a description for a commit.

Last updated: March 10, 2026