首页 > 解决方案 > 运行 Python Cookiecutter 从 GitHub 获取模板导致 subprocess.CalledProcessError,返回非零退出状态 128

问题描述

在运行 Cookiecutter 时,我遇到了以下错误消息:

C:\Users\Al>cookiecutter https://github.com/asweigart/cookiecutter-basicpythonproject
You've downloaded C:\Users\Al\.cookiecutters\cookiecutter-basicpythonproject before. Is it okay to delete and re-download it? [yes]:
Traceback (most recent call last):
  File "C:\Users\Al\AppData\Local\Programs\Python\Python37\lib\runpy.py", line 193, in _run_module_as_main
    "__main__", mod_spec)
  File "C:\Users\Al\AppData\Local\Programs\Python\Python37\lib\runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "C:\Users\Al\AppData\Roaming\Python\Python37\site-packages\cookiecutter\__main__.py", line 9, in <module>
    main(prog_name="cookiecutter")
  File "C:\Users\Al\AppData\Local\Programs\Python\Python37\lib\site-packages\click\core.py", line 722, in __call__
    return self.main(*args, **kwargs)
  File "C:\Users\Al\AppData\Local\Programs\Python\Python37\lib\site-packages\click\core.py", line 697, in main
    rv = self.invoke(ctx)
  File "C:\Users\Al\AppData\Local\Programs\Python\Python37\lib\site-packages\click\core.py", line 895, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "C:\Users\Al\AppData\Local\Programs\Python\Python37\lib\site-packages\click\core.py", line 535, in invoke
    return callback(*args, **kwargs)
  File "C:\Users\Al\AppData\Roaming\Python\Python37\site-packages\cookiecutter\cli.py", line 120, in main
    password=os.environ.get('COOKIECUTTER_REPO_PASSWORD')
  File "C:\Users\Al\AppData\Roaming\Python\Python37\site-packages\cookiecutter\main.py", line 63, in cookiecutter
    password=password
  File "C:\Users\Al\AppData\Roaming\Python\Python37\site-packages\cookiecutter\repository.py", line 103, in determine_repo_dir
    no_input=no_input,
  File "C:\Users\Al\AppData\Roaming\Python\Python37\site-packages\cookiecutter\vcs.py", line 99, in clone
    stderr=subprocess.STDOUT,
  File "C:\Users\Al\AppData\Local\Programs\Python\Python37\lib\subprocess.py", line 389, in check_output
    **kwargs).stdout
  File "C:\Users\Al\AppData\Local\Programs\Python\Python37\lib\subprocess.py", line 481, in run
    output=stdout, stderr=stderr)
subprocess.CalledProcessError: Command '['git', 'clone', 'https://github.com/asweigart/cookiecutter-basicpythonproject']' returned non-zero exit status 128.

是什么导致此错误消息,我该如何解决?

标签: pythoncookiecutter

解决方案


造成这种情况的原因之一是您的计算机时钟不准确,当 Cookiecutter 尝试连接到 GitHub.com 以下载模板时会导致 SSL 错误。更正您的系统时钟并再次尝试该命令。


推荐阅读