``` git_repo = git.Repo.init(path_to_folder_with_no_working_tree, initial_branch="main") ``` gives me ``` git.exc.GitCommandError: Cmd('git') failed due to: exit code(129) cmdline: git init --initial-branch=main stderr: 'error: unknown option `initial-branch=main' usage: git init [-q | --quiet] [--bare] [--template=<template-directory>] [--shared[=<permissions>]] [<directory>] ``` ## Workaround I have to resort to this ``` init_git(path_to_folder_with_no_working_tree) def execute(*args, supress_exception=False, cwd=None): cur_dir = os.getcwd() try: if cwd: os.chdir(cwd) proc = subprocess.Popen(args, stdout=subprocess.PIPE, stderr=subprocess.PIPE) out, err = proc.communicate() out = out.decode("utf-8") err = err.decode("utf-8") if err and not supress_exception: raise Exception(err) else: return out finally: os.chdir(cur_dir) def init_git(project_directory): # workaround for issue #1 if not os.path.exists(os.path.join(project_directory, ".git")): execute( "git", "config", "--global", "init.defaultBranch", "main", cwd=project_directory, ) execute("git", "init", cwd=project_directory) ``` Is there a better way to do the same thing?
Activity