def __init__(self, path_to_repo: Union[str, List[str]],
                 single: str = None,
                 since: datetime = None, to: datetime = None,
                 from_commit: str = None, to_commit: str = None,
                 from_tag: str = None, to_tag: str = None,
                 reversed_order: bool = False,
                 only_in_branch: str = None,
                 only_modifications_with_file_types: List[str] = None,
                 only_no_merge: bool = False,
                 only_authors: List[str] = None,
                 only_commits: List[str] = None,
                 filepath: str = None):
        """
        Init a repository mining. The only required parameter is
        "path_to_repo": to analyze a
        single repo, pass the absolute path to the repo; if you need to
        analyze more
        repos, pass a list of absolute paths.

        Furthermore, PyDriller supports local and remote repositories: if
        you pass a path to a
        repo, PyDriller will run the study on that repo; if you pass an URL,
        PyDriller will clone
        the repo in a temporary folder, run the study, and delete the
        temporary folder.

        :param Union[str,List[str]] path_to_repo: absolute path (or list of
            absolute paths) to the repository(ies) to analyze
        :param str single: hash of a single commit to analyze
        :param datetime since: starting date
        :param datetime to: ending date
        :param str from_commit: starting commit (only if `since` is None)
        :param str to_commit: ending commit (only if `to` is None)
        :param str from_tag: starting the analysis from specified tag (only
            if `since` and `from_commit` are None)
        :param str to_tag: ending the analysis from specified tag (only if
            `to` and `to_commit` are None)
        :param bool reversed_order: whether the commits should be analyzed
            in reversed order
        :param str only_in_branch: only commits in this branch will be analyzed
        :param List[str] only_modifications_with_file_types: only
            modifications with that file types will be analyzed
        :param bool only_no_merge: if True, merges will not be analyzed
        :param List[str] only_authors: only commits of these authors will be
            analyzed (the check is done on the username, NOT the email)
        :param List[str] only_commits: only these commits will be analyzed
        :param str filepath: only commits that modified this file will be
            analyzed
        """

        self._sanity_check_repos(path_to_repo)
        self._path_to_repo = path_to_repo

        self._from_commit = from_commit
        self._to_commit = to_commit
        self._from_tag = from_tag
        self._to_tag = to_tag
        self._single = single
        self._since = since
        self._to = to
        self._reversed_order = reversed_order
        self._only_in_branch = only_in_branch
        self._only_modifications_with_file_types = \
            only_modifications_with_file_types
        self._only_no_merge = only_no_merge
        self._only_authors = only_authors
        self._only_commits = only_commits
        self._filepath = filepath
        self._filepath_commits = None
def __init__ ( self , path_to_repo : Union [ str , List [ str ] ] , single : str = None , since : datetime = None , to : datetime = None , from_commit : str = None , to_commit : str = None , from_tag : str = None , to_tag : str = None , reversed_order : bool = False , only_in_branch : str = None , only_modifications_with_file_types : List [ str ] = None , only_no_merge : bool = False , only_authors : List [ str ] = None , only_commits : List [ str ] = None , filepath : str = None ) : self . _sanity_check_repos ( path_to_repo ) self . _path_to_repo = path_to_repo self . _from_commit = from_commit self . _to_commit = to_commit self . _from_tag = from_tag self . _to_tag = to_tag self . _single = single self . _since = since self . _to = to self . _reversed_order = reversed_order self . _only_in_branch = only_in_branch self . _only_modifications_with_file_types = only_modifications_with_file_types self . _only_no_merge = only_no_merge self . _only_authors = only_authors self . _only_commits = only_commits self . _filepath = filepath self . _filepath_commits = None
Init a repository mining. The only required parameter is
        "path_to_repo": to analyze a
        single repo, pass the absolute path to the repo; if you need to
        analyze more
        repos, pass a list of absolute paths.

        Furthermore, PyDriller supports local and remote repositories: if
        you pass a path to a
        repo, PyDriller will run the study on that repo; if you pass an URL,
        PyDriller will clone
        the repo in a temporary folder, run the study, and delete the
        temporary folder.

        :param Union[str,List[str]] path_to_repo: absolute path (or list of
            absolute paths) to the repository(ies) to analyze
        :param str single: hash of a single commit to analyze
        :param datetime since: starting date
        :param datetime to: ending date
        :param str from_commit: starting commit (only if `since` is None)
        :param str to_commit: ending commit (only if `to` is None)
        :param str from_tag: starting the analysis from specified tag (only
            if `since` and `from_commit` are None)
        :param str to_tag: ending the analysis from specified tag (only if
            `to` and `to_commit` are None)
        :param bool reversed_order: whether the commits should be analyzed
            in reversed order
        :param str only_in_branch: only commits in this branch will be analyzed
        :param List[str] only_modifications_with_file_types: only
            modifications with that file types will be analyzed
        :param bool only_no_merge: if True, merges will not be analyzed
        :param List[str] only_authors: only commits of these authors will be
            analyzed (the check is done on the username, NOT the email)
        :param List[str] only_commits: only these commits will be analyzed
        :param str filepath: only commits that modified this file will be
            analyzed