246
251
child_base_hexsha = None
247
252
child_base_mode = 0
248
253
if stat.S_ISDIR(child_mode):
249
subinvdelta, grandchildmodes = import_git_tree(
250
texts, mapping, child_path, name,
251
(child_base_hexsha, child_hexsha),
252
base_inv, file_id, revision_id, parent_invs, lookup_object,
253
(child_base_mode, child_mode), store_updater,
254
lookup_file_id, allow_submodules=allow_submodules)
254
subinvdelta, grandchildmodes = import_git_tree(texts, mapping,
255
child_path, name, (child_base_hexsha, child_hexsha), base_inv,
256
file_id, revision_id, parent_invs, lookup_object,
257
(child_base_mode, child_mode), store_updater, lookup_file_id,
258
allow_submodules=allow_submodules)
255
259
elif S_ISGITLINK(child_mode): # submodule
256
260
if not allow_submodules:
257
261
raise SubmodulesRequireSubtrees()
258
subinvdelta, grandchildmodes = import_git_submodule(
259
texts, mapping, child_path, name,
260
(child_base_hexsha, child_hexsha),
261
base_inv, file_id, revision_id, parent_invs, lookup_object,
262
(child_base_mode, child_mode), store_updater,
262
subinvdelta, grandchildmodes = import_git_submodule(texts, mapping,
263
child_path, name, (child_base_hexsha, child_hexsha), base_inv,
264
file_id, revision_id, parent_invs, lookup_object,
265
(child_base_mode, child_mode), store_updater, lookup_file_id)
265
subinvdelta = import_git_blob(texts, mapping,
266
child_path, name, (child_base_hexsha, child_hexsha),
267
base_inv, file_id, revision_id, parent_invs, lookup_object,
268
(child_base_mode, child_mode), store_updater,
267
subinvdelta = import_git_blob(texts, mapping, child_path, name,
268
(child_base_hexsha, child_hexsha), base_inv, file_id,
269
revision_id, parent_invs, lookup_object,
270
(child_base_mode, child_mode), store_updater, lookup_file_id)
270
271
grandchildmodes = {}
271
272
child_modes.update(grandchildmodes)
272
273
invdelta.extend(subinvdelta)
549
551
create_pb = pb = ui.ui_factory.nested_progress_bar()
551
objects_iter = self.source.fetch_objects(
552
record_determine_wants, graph_walker,
553
store.get_raw, progress)
553
objects_iter = self.source.fetch_objects(record_determine_wants,
554
graph_walker, store.get_raw, progress)
554
555
return import_git_objects(self.target, mapping,
555
556
objects_iter, store, recorded_wants, pb, limit)