import os url = "https://www.sinxmiao.cn/" backup_name = "gitea_backup" current_path = os.getcwd() print("Current:" + current_path) parent_path = os.path.dirname(current_path) print("Parent:" + parent_path) config_path = os.path.join(current_path, "repo_list.txt") if not os.path.exists(config_path): print("repo_list.txt not found.") exit() backup_path = os.path.join(parent_path, backup_name) print("Backup Path:" + backup_path) if not os.path.exists(backup_path): os.makedirs(backup_path) with open(config_path, "r", encoding="utf-8") as f: content = f.readlines() for repo in content: repo_name = repo.replace("\n", "") purpose_dir = os.path.join(backup_path, repo_name) if not os.path.exists(purpose_dir): os.makedirs(purpose_dir) cmd = "git clone --recursive " + url + repo_name + ".git" cmd = cmd + " \"" + purpose_dir + "\"" else: cmd = "cd /d \"" + purpose_dir + "\" && git pull && git submodule update" print(cmd) os.system(cmd)