With git status
I can get information about count of unpublished commits:
» git status
# On branch master
# Your branch is ahead of 'origin/master' by 2 commits.
# (use "git push" to publish your local commits)
#
nothing to commit, working directory clean
I want to get unpublished commits (or count) with GitPython. I docs I found repo.git.status()
, but this is not what I want.
The command you are looking for is:
repo.iter_commits('BRANCH..BRANCH@{u}')
or if you want this as a list:
list(repo.iter_commits('BRANCH..BRANCH@{u}'))
The BRANCH@{u}
syntax refers to the upstream branch of BRANCH
.
Thanks to @Chronial and @Clare-Macrae for your feedback
Using gitPython
==3.1.11
, I did it like that:
branch = self.repo.active_branch
unpushed_symbol = '⇡' if list(self.repo.iter_commits(f'{branch}@{{u}}..{branch}')) else constants.NOTHING
unpulled_symbol = '⇣' if list(self.repo.iter_commits(f'{branch}..{branch}@{{u}}')) else constants.NOTHING
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With