import os
import subprocess

def get_git_func(repo_path):
    def git(cmd, *args):
        full_cmd = ["git", cmd] + list(args)
        return subprocess.check_output(full_cmd, cwd=repo_path, stderr=subprocess.STDOUT)
    return git


def is_git_repo(tests_root):
    return os.path.exists(os.path.join(tests_root, ".git"))


_repo_root = None
def get_repo_root(initial_dir=None):
    global _repo_root

    if initial_dir is None:
        initial_dir = os.path.dirname(__file__)

    if _repo_root is None:
        git = get_git_func(initial_dir)
        _repo_root = git("rev-parse", "--show-toplevel").rstrip()
    return _repo_root

fdc6500d212d9dae97b9d93c9bcc72d7558ff37c
<mask token>


def is_git_repo(tests_root):
    return os.path.exists(os.path.join(tests_root, '.git'))


<mask token>


def get_repo_root(initial_dir=None):
    global _repo_root
    if initial_dir is None:
        initial_dir = os.path.dirname(__file__)
    if _repo_root is None:
        git = get_git_func(initial_dir)
        _repo_root = git('rev-parse', '--show-toplevel').rstrip()
    return _repo_root

<mask token>


def get_git_func(repo_path):

    def git(cmd, *args):
        full_cmd = ['git', cmd] + list(args)
        return subprocess.check_output(full_cmd, cwd=repo_path, stderr=
            subprocess.STDOUT)
    return git


def is_git_repo(tests_root):
    return os.path.exists(os.path.join(tests_root, '.git'))


<mask token>


def get_repo_root(initial_dir=None):
    global _repo_root
    if initial_dir is None:
        initial_dir = os.path.dirname(__file__)
    if _repo_root is None:
        git = get_git_func(initial_dir)
        _repo_root = git('rev-parse', '--show-toplevel').rstrip()
    return _repo_root

<mask token>


def get_git_func(repo_path):

    def git(cmd, *args):
        full_cmd = ['git', cmd] + list(args)
        return subprocess.check_output(full_cmd, cwd=repo_path, stderr=
            subprocess.STDOUT)
    return git


def is_git_repo(tests_root):
    return os.path.exists(os.path.join(tests_root, '.git'))


_repo_root = None


def get_repo_root(initial_dir=None):
    global _repo_root
    if initial_dir is None:
        initial_dir = os.path.dirname(__file__)
    if _repo_root is None:
        git = get_git_func(initial_dir)
        _repo_root = git('rev-parse', '--show-toplevel').rstrip()
    return _repo_root

import os
import subprocess


def get_git_func(repo_path):

    def git(cmd, *args):
        full_cmd = ['git', cmd] + list(args)
        return subprocess.check_output(full_cmd, cwd=repo_path, stderr=
            subprocess.STDOUT)
    return git


def is_git_repo(tests_root):
    return os.path.exists(os.path.join(tests_root, '.git'))


_repo_root = None


def get_repo_root(initial_dir=None):
    global _repo_root
    if initial_dir is None:
        initial_dir = os.path.dirname(__file__)
    if _repo_root is None:
        git = get_git_func(initial_dir)
        _repo_root = git('rev-parse', '--show-toplevel').rstrip()
    return _repo_root

import os
import subprocess

def get_git_func(repo_path):
    def git(cmd, *args):
        full_cmd = ["git", cmd] + list(args)
        return subprocess.check_output(full_cmd, cwd=repo_path, stderr=subprocess.STDOUT)
    return git


def is_git_repo(tests_root):
    return os.path.exists(os.path.join(tests_root, ".git"))


_repo_root = None
def get_repo_root(initial_dir=None):
    global _repo_root

    if initial_dir is None:
        initial_dir = os.path.dirname(__file__)

    if _repo_root is None:
        git = get_git_func(initial_dir)
        _repo_root = git("rev-parse", "--show-toplevel").rstrip()
    return _repo_root
