Handle bare Git SHA labels

ober

fe5999979dd77637acef25ac7019c715aa0de9c4

diff --git a/gitsafe/scanner.ss b/gitsafe/scanner.ss
index cb6d6f8..494666c 100644
--- a/gitsafe/scanner.ss
+++ b/gitsafe/scanner.ss
@@ -218,14 +218,15 @@
           [else (loop (+ i 1))]))))
 
   (def *git-sha-prefix-re*
-    (re "(?i:(^|[^A-Za-z0-9_])(?:old\\s+head|new\\s+head|head|commit|revision|rev|object|tree|parent|merge|merged|checkout|reset|rebase|tag)[^A-Za-z0-9_]{0,24}$)"))
+    (re "(?i:(^|[^A-Za-z0-9_])(?:old\\s+head|new\\s+head|old|new|head|commit|revision|rev|object|tree|parent|merge|merged|checkout|reset|rebase|tag)[^A-Za-z0-9_]{0,24}$)"))
 
   (def (git-object-id-length? s)
     (let ([n (string-length s)])
       (or (= n 40) (= n 64))))
 
   ;; Returns #t when a high-entropy hex match is in a Git object-id context,
-  ;; e.g. "OLD HEAD: <sha1>", "commit <sha1>", or "parent <sha1>".
+  ;; e.g. "OLD: <sha1>", "OLD HEAD: <sha1>", "commit <sha1>",
+  ;; or "parent <sha1>".
   (def (in-git-sha-context? line match-start matched)
     (and (git-object-id-length? matched)
          (let* ([prefix-start (max 0 (- match-start 96))]
diff --git a/test/test-gitsafe.ss b/test/test-gitsafe.ss
index a5a7ad4..60bc082 100644
--- a/test/test-gitsafe.ss
+++ b/test/test-gitsafe.ss
@@ -325,6 +325,8 @@
              [findings (scan-content "rebase.log"
                          (string-append
                            "OLD HEAD: 89ca49128bc2f2f38480be0e697d02a3a5339121\n"
+                           "OLD: 7b01c18b510818a7eb98159139687905f1ff4845\n"
+                           "NEW: 7b01c18b510818a7eb98159139687905f1ff4845\n"
                            "commit 89ca49128bc2f2f38480be0e697d02a3a5339121\n"
                            "parent 89ca49128bc2f2f38480be0e697d02a3a5339121\n")
                          c)])