diff --git a/.changes/unreleased/Fixed-20240729-192426.yaml b/.changes/unreleased/Fixed-20240729-192426.yaml
deleted file mode 100644
index 16ca0a5f..00000000
--- a/.changes/unreleased/Fixed-20240729-192426.yaml
+++ /dev/null
@@ -1,3 +0,0 @@
-kind: Fixed
-body: 'branch submit: Fail if Git editor is explicitly unset and there''s no fallback.'
-time: 2024-07-29T19:24:26.018128-07:00
diff --git a/.changes/unreleased/Fixed-20240729-194855.yaml b/.changes/unreleased/Fixed-20240729-194855.yaml
deleted file mode 100644
index 635c439e..00000000
--- a/.changes/unreleased/Fixed-20240729-194855.yaml
+++ /dev/null
@@ -1,3 +0,0 @@
-kind: Fixed
-body: Fix 'gs branch restack' message arguments in error messages instructing on restacking.
-time: 2024-07-29T19:48:55.032041-07:00
diff --git a/.changes/unreleased/Fixed-20240729-201902.yaml b/.changes/unreleased/Fixed-20240729-201902.yaml
deleted file mode 100644
index 6d35537a..00000000
--- a/.changes/unreleased/Fixed-20240729-201902.yaml
+++ /dev/null
@@ -1,3 +0,0 @@
-kind: Fixed
-body: 'branch create: Don''t lose data if the requested branch name already exists.'
-time: 2024-07-29T20:19:02.394609-07:00
diff --git a/.changes/unreleased/Fixed-20240729-210429.yaml b/.changes/unreleased/Fixed-20240729-210429.yaml
deleted file mode 100644
index 177c75df..00000000
--- a/.changes/unreleased/Fixed-20240729-210429.yaml
+++ /dev/null
@@ -1,3 +0,0 @@
-kind: Fixed
-body: 'branch create: Don''t lose data if the branch cannot be created for any reason.'
-time: 2024-07-29T21:04:29.049874-07:00
diff --git a/.changes/v0.3.1.md b/.changes/v0.3.1.md
new file mode 100644
index 00000000..b6d10527
--- /dev/null
+++ b/.changes/v0.3.1.md
@@ -0,0 +1,6 @@
+## v0.3.1 - 2024-07-30
+### Fixed
+- branch submit: Fail if Git editor is explicitly unset and there's no fallback.
+- branch create: Ensure auto-generated branch names are unique.
+- branch create: Don't lose data if the branch cannot be created for any reason.
+- Fix messages instructing use of 'gs branch restack' to use correct arguments.
diff --git a/CHANGELOG.md b/CHANGELOG.md
index ed52ebf7..6effd1f3 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -5,6 +5,13 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html),
and is generated by [Changie](https://github.com/miniscruff/changie).
+## v0.3.1 - 2024-07-30
+### Fixed
+- branch submit: Fail if Git editor is explicitly unset and there's no fallback.
+- branch create: Ensure auto-generated branch names are unique.
+- branch create: Don't lose data if the branch cannot be created for any reason.
+- Fix messages instructing use of 'gs branch restack' to use correct arguments.
+
## v0.3.0 - 2024-07-24
### Added
- Authentication: If a secure storage is not available, fall back to plain text, but warn the user about it.