It turns out that = is not the same as ==. Who knew?
diff --git a/commits/repositories.php b/commits/repositories.php
index f65fb4b..bd2bc3d 100644
--- a/commits/repositories.php
+++ b/commits/repositories.php
@@ -91,7 +91,7 @@
 	foreach(get_headers($url) as $header) {
 		if (preg_match('/^HTTP.*(\d)\d\d/', $header, $matches)) {
 			// We are happy with 200 or 300 codes.
-			return $matches[1] == '2' || $matches[1] = '3';
+			return $matches[1] == '2' || $matches[1] == '3';
 		}
 	}
 	return false;