我刚刚开始使用 Python,我的第一个任务是编写一个脚本来确定它运行的目录是否是 git 存储库。一位同学建议了这段代码:
#! /usr/bin/env python
from subprocess import Popen, PIPE, STDOUT
if Popen(("git", "branch"), stderr=STDOUT, stdout=PIPE).returncode != 0:
print("Nope!")
else:
print("Yup!")
它应该根据控制台命令“gitbranch”的返回码打印输出。但是,该脚本在存储库中不起作用。
无论如何,我将不胜感激任何有关此事的建议。
该作业还包括:
- 能够在 Windows 上使用相同的脚本
- 最终将确定的路径传递给脚本,而无需将其复制到目标目录
非常感谢!
Install gitpython
, e.g pip install gitpython
.
然后创建一个像这样的函数:
import git
...
def is_git_repo(path):
try:
_ = git.Repo(path).git_dir
return True
except git.exc.InvalidGitRepositoryError:
return False
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)