colrev.git_repo.GitRepo

class colrev.git_repo.GitRepo(path)[source]

Bases: object

Wrapper for Git repository interactions

Methods

add_changes

Add changed file to git

add_setting_changes

Add changes in settings to git

behind_remote

Check whether the repository is behind the remote

create_commit

Create a commit (including a commit report)

file_in_history

Check whether a file is in the git history

get_commit_message

Get the commit message for commit #

get_last_commit_date

Get the last commit date for a file

get_last_commit_sha

Get the last commit sha

get_last_updated

Returns the date of the last update (if available) in YYYY-MM-DD format

get_remote_url

Get the remote url

get_tree_hash

Get the current tree hash

get_untracked_files

Get the files that are untracked by git

has_changes

Check whether the relative path (or the git repository) has changes

has_record_changes

Check whether the records have changes

has_untracked_search_records

Check whether there are untracked search records

pull_if_repo_clean

Pull project if repository is clean

records_changed

Check whether the records were changed

remote_ahead

Check whether the remote is ahead

repo_initialized

Check whether the repository is initialized

stash_unstaged_changes

Stash unstaged changes

update_gitignore

Update the gitignore file by adding or removing particular paths

add_changes(path, *, remove=False, ignore_missing=False)[source]

Add changed file to git

Return type:

None

add_setting_changes()[source]

Add changes in settings to git

Return type:

None

behind_remote()[source]

Check whether the repository is behind the remote

Return type:

bool

create_commit(*, msg, review_manager, manual_author=False, script_call='', saved_args=None, skip_status_yaml=False, skip_hooks=True)[source]

Create a commit (including a commit report)

Return type:

bool

file_in_history(filepath)[source]

Check whether a file is in the git history

Return type:

bool

get_commit_message(*, commit_nr)[source]

Get the commit message for commit #

Return type:

str

get_last_commit_date(filename)[source]

Get the last commit date for a file

Return type:

str

get_last_commit_sha()[source]

Get the last commit sha

Return type:

str

get_last_updated(feed_file)[source]

Returns the date of the last update (if available) in YYYY-MM-DD format

Return type:

str

get_remote_url()[source]

Get the remote url

Return type:

str

get_tree_hash()[source]

Get the current tree hash

Return type:

str

get_untracked_files()[source]

Get the files that are untracked by git

Return type:

list[Path]

has_changes(relative_path, *, change_type='all')[source]

Check whether the relative path (or the git repository) has changes

Return type:

bool

has_record_changes(*, change_type='all')[source]

Check whether the records have changes

Return type:

bool

has_untracked_search_records()[source]

Check whether there are untracked search records

Return type:

bool

pull_if_repo_clean()[source]

Pull project if repository is clean

Return type:

None

records_changed()[source]

Check whether the records were changed

Return type:

bool

remote_ahead()[source]

Check whether the remote is ahead

Return type:

bool

repo_initialized()[source]

Check whether the repository is initialized

Return type:

bool

stash_unstaged_changes()[source]

Stash unstaged changes

Return type:

bool

update_gitignore(*, add=None, remove=None)[source]

Update the gitignore file by adding or removing particular paths

Return type:

None