要在Python中调用Git命令,您可以使用subprocess
模块
import subprocess
# 获取当前目录下的所有Git仓库
def get_git_repos(path):
return [d for d in os.listdir(path) if os.path.isdir(os.path.join(path, d)) and os.path.exists(os.path.join(d, '.git'))]
# 调用Git命令并捕获输出
def run_git_command(repo_path, command):
result = subprocess.run(['git', '-C', repo_path] + command, capture_output=True, text=True)
return result.stdout, result.stderr
# 示例:获取当前目录下的所有Git仓库
repos = get_git_repos('.')
print("Git repositories found:")
for repo in repos:
print(repo)
# 示例:在第一个找到的Git仓库中运行`git status`命令
if repos:
stdout, stderr = run_git_command(repos[0], ['status'])
print("\nOutput of 'git status' in the first repository:")
print(stdout)
if stderr:
print("Error:")
print(stderr)
else:
print("No Git repositories found.")
这个示例中,get_git_repos
函数用于获取当前目录下的所有Git仓库,而run_git_command
函数用于在指定的Git仓库中运行Git命令。请注意,您需要将示例中的.
替换为您要检查的目录路径。