v2.2.0
diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml
index 55c6f73..44a5020 100644
--- a/.pre-commit-config.yaml
+++ b/.pre-commit-config.yaml
@@ -1,6 +1,6 @@
 repos:
 -   repo: https://github.com/pre-commit/pre-commit-hooks
-    rev: v2.1.0
+    rev: v2.2.0
     hooks:
     -   id: trailing-whitespace
     -   id: end-of-file-fixer
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 472a291..2b07445 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,34 @@
+2.2.0
+=====
+
+### Features
+- Switch from `pyyaml` to `ruamel.yaml`
+    - This enforces (among other things) duplicate key checking in yaml.
+    - #351 PR by @asottile.
+- Add a new `--pattern` option to `no-commit-to-branch` for regex matching
+  branch names.
+    - #375 issue by @marcjay.
+    - #376 PR by @marcjay.
+
+### Fixes
+- Set `require_serial: true` for flake8
+    - flake8 internally uses multiprocessing.
+    - #358 PR by @asottile.
+- Don't run `check-executables-have-shebangs` / `trailing-whitespace` hooks
+  during the `commit-msg` stage.
+    - #361 issue by @revolter.
+    - #362 PR by @revolter.
+- Run `check-byte-order-marker` against `types: [text]`
+    - #371 PR by @tobywf.
+    - #372 PR by @tobywf.
+- Do not require UTF-8-encoded files for `check-docstring-first`
+    - #345 issue by @x007007007.
+    - #374 PR by @asottile.
+
+### Misc.
+- `pre-commit-hooks` now is type checked with mypy.
+    - #360 PR by @asottile.
+
 2.1.0
 =====
 
diff --git a/README.md b/README.md
index 5bf28d3..590585b 100644
--- a/README.md
+++ b/README.md
@@ -14,7 +14,7 @@
 Add this to your `.pre-commit-config.yaml`
 
     -   repo: https://github.com/pre-commit/pre-commit-hooks
-        rev: v2.1.0  # Use the ref you want to point at
+        rev: v2.2.0  # Use the ref you want to point at
         hooks:
         -   id: trailing-whitespace
         # -   id: ...
diff --git a/setup.cfg b/setup.cfg
index 3dea066..1a1987f 100644
--- a/setup.cfg
+++ b/setup.cfg
@@ -1,6 +1,6 @@
 [metadata]
 name = pre_commit_hooks
-version = 2.1.0
+version = 2.2.0
 description = Some out-of-the-box hooks for pre-commit.
 long_description = file: README.md
 long_description_content_type = text/markdown