forked from importers/git-importer
		
	Compare commits
	
		
			1 Commits
		
	
	
		
			use_git_fo
			...
			typo
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
|  | 17062df04e | 
| @@ -271,7 +271,7 @@ class Git: | ||||
|             ["remote"], | ||||
|             stdout=subprocess.PIPE, | ||||
|         ).stdout.decode("utf-8"): | ||||
|             logger.warning("Not pushing to remote because no 'origin' configured") | ||||
|             logging.warning("Not pushing to remote because no 'origin' configured") | ||||
|             return | ||||
|  | ||||
|         cmd = ["push"] | ||||
|   | ||||
| @@ -2,8 +2,6 @@ import logging | ||||
| import os | ||||
|  | ||||
| import yaml | ||||
| from hashlib import md5 | ||||
| from pathlib import Path | ||||
|  | ||||
| from lib.binary import is_binary_or_large | ||||
| from lib.db import DB | ||||
| @@ -135,12 +133,6 @@ class GitExporter: | ||||
|             return True | ||||
|         return flat.parent1 == branch_state[flat.branch] | ||||
|  | ||||
|     def file_md5(self, file): | ||||
|         m = md5() | ||||
|         with open(file, 'rb') as f: | ||||
|             m.update(f.read()) | ||||
|         return m.hexdigest() | ||||
|  | ||||
|     def commit_flat(self, flat, branch_state): | ||||
|         parents = [] | ||||
|         self.git.checkout(flat.branch) | ||||
| @@ -159,40 +151,11 @@ class GitExporter: | ||||
|         # create file if not existant | ||||
|         self.git.add_default_lfs_gitattributes(force=False) | ||||
|  | ||||
|         new_files = flat.commit.files_list() | ||||
|         cur_files = os.listdir(self.git.path) | ||||
|         for cf in cur_files: | ||||
|             if cf[0] == '.': | ||||
|                 continue | ||||
|             found = False | ||||
|             for nf in new_files: | ||||
|                 if nf['name'] == cf: | ||||
|                     found = True | ||||
|                     break | ||||
|  | ||||
|             if found: | ||||
|                 # check if file is modified | ||||
|                 file_path = self.git.path.joinpath(cf) | ||||
|                 stat = file_path.stat() | ||||
|                 if stat.st_size != nf['size'] or self.file_md5(file_path) != nf['md5']: | ||||
|                     logging.debug(f"updating {file_path.name}") | ||||
|                     self.commit_file(flat, Path(cf), nf['size'], nf['md5']) | ||||
|                 else: | ||||
|                     logging.debug(f"leaving  {file_path.name}") | ||||
|             else: | ||||
|                 # file not exist in new commit | ||||
|                 self.git.remove(Path(cf)) | ||||
|  | ||||
|  | ||||
|         # new files? | ||||
|         for file in new_files: | ||||
|             found = False | ||||
|             for cf in cur_files: | ||||
|                 if file['name'] == cf: | ||||
|                     found = True | ||||
|                     break | ||||
|             if not found: | ||||
|                 self.commit_file(flat, Path(file['name']), file['size'], file['md5']) | ||||
|         to_download, to_delete = flat.commit.calc_delta(branch_state[flat.branch]) | ||||
|         for file in to_delete: | ||||
|             self.git.remove(file) | ||||
|         for file, size, md5 in to_download: | ||||
|             self.commit_file(flat, file, size, md5) | ||||
|  | ||||
|         commit = self.git.commit( | ||||
|             flat.user.realname, | ||||
|   | ||||
		Reference in New Issue
	
	Block a user