}
 
 sub fetch_from_archive () {
-    # Ensures that lrref() is what is actually in the archive,
-    #  one way or another.  If there is nothing in the archive,
-    #  leaves lrref alone and returns 0.
+    # Ensures that lrref() is what is actually in the archive, one way
+    # or another, according to us - ie this client's
+    # appropritaely-updated archive view.  Also returns the commit id.
+    # If there is nothing in the archive, leaves lrref alone and
+    # returns undef.
     get_archive_dsc();
 
     if ($dsc) {
 END
        }
        unshift @end, $del_lrfetchrefs;
-       return 0;
+       return undef;
     }
 
     if ($lastfetch_hash &&
     lrfetchref_used lrfetchref();
 
     unshift @end, $del_lrfetchrefs;
-    return 1;
+    return $hash;
 }
 
 sub set_local_git_config ($$) {