mirror of
https://github.com/qmk/qmk_cli.git
synced 2026-07-25 16:42:55 -04:00
a7a7bd9f08
* improve the qmk setup flow * Apply suggestions from code review Co-Authored-By: Erovia <Erovia@users.noreply.github.com> * Update qmk_cli/subcommands/setup.py * explicity set encoding to utf-8 * polishing Co-authored-by: Erovia <Erovia@users.noreply.github.com>
33 lines
823 B
Python
33 lines
823 B
Python
"""Helpers for working with git.
|
|
"""
|
|
import subprocess
|
|
|
|
from milc import cli
|
|
|
|
default_repo = 'qmk_firmware'
|
|
default_fork = 'qmk/' + default_repo
|
|
default_branch = 'master'
|
|
|
|
|
|
def git_clone(url, destination, branch):
|
|
git_clone = [
|
|
'git',
|
|
'clone',
|
|
'--recurse-submodules',
|
|
'--branch=' + branch,
|
|
url,
|
|
destination,
|
|
]
|
|
cli.log.debug('Git clone command: %s', git_clone)
|
|
|
|
with subprocess.Popen(git_clone, stderr=subprocess.STDOUT, stdout=subprocess.PIPE, bufsize=1, universal_newlines=True, encoding='utf-8') as p:
|
|
for line in p.stdout:
|
|
print(line, end='')
|
|
|
|
if p.returncode != 0:
|
|
cli.log.error('git clone exited %d', p.returncode)
|
|
else:
|
|
cli.log.info('Successfully cloned %s to %s!', url, destination)
|
|
|
|
return p.returncode
|