From ea24bcb783dacda23912d3dc500e8856a16f1040 Mon Sep 17 00:00:00 2001 From: Glenn Jocher Date: Fri, 22 Jan 2021 12:37:12 -0800 Subject: [PATCH] check_git_status() Windows fix (#2015) * check_git_status() Windows fix * Update general.py * Update general.py * Update general.py * Update general.py * Update general.py * Update general.py --- utils/general.py | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/utils/general.py b/utils/general.py index 37534799c157..aa137ebde5ff 100755 --- a/utils/general.py +++ b/utils/general.py @@ -4,6 +4,7 @@ import logging import math import os +import platform import random import re import subprocess @@ -65,14 +66,15 @@ def check_git_status(): assert check_online(), 'skipping check (offline)' cmd = 'git fetch && git config --get remote.origin.url' # github repo url - url = subprocess.check_output(cmd, shell=True).decode()[:-1] - cmd = 'git rev-list $(git rev-parse --abbrev-ref HEAD)..origin/master --count' # commits behind - n = int(subprocess.check_output(cmd, shell=True)) + url = subprocess.check_output(cmd, shell=True).decode().rstrip() + branch = subprocess.check_output('git branch --show-current', shell=True).decode().rstrip() # current + n = int(subprocess.check_output(f'git rev-list {branch}..origin/master --count', shell=True)) # commits behind if n > 0: - print(f"⚠️ WARNING: code is out of date by {n} {'commits' if n > 1 else 'commmit'}. " - f"Use 'git pull' to update or 'git clone {url}' to download latest.") + s = f"⚠️ WARNING: code is out of date by {n} {'commits' if n > 1 else 'commmit'}. " \ + f"Use 'git pull' to update or 'git clone {url}' to download latest." else: - print(f'up to date with {url} ✅') + s = f'up to date with {url} ✅' + print(s.encode().decode('ascii', 'ignore') if platform.system() == 'Windows' else s) except Exception as e: print(e)