objects: don't recompute hash on odb.add() if verify is False (#5860)

This commit is contained in:
Batuhan Taskaya
2021-04-22 13:50:24 +03:00
committed by GitHub
parent d87ace0968
commit a42e363217
2 changed files with 17 additions and 5 deletions
+11 -1
View File
@@ -1,4 +1,6 @@
import errno
import logging
import os
from .errors import ObjectFormatError
@@ -35,9 +37,17 @@ class HashFile:
and self.hash_info == other.hash_info
)
def check(self, odb):
def check(self, odb, check_hash=True):
from .stage import get_file_hash
if not check_hash:
if not self.fs.exists(self.path_info):
raise FileNotFoundError(
errno.ENOENT, os.strerror(errno.ENOENT), self.path_info
)
else:
return None
actual = get_file_hash(
self.path_info, self.fs, self.hash_info.name, odb.repo.state
)