Command line utility for GitHub daily work.
Project description
yogit
Command line utility for git daily work.
Requirements
Python3andpip3yogitis tested with Python3.5,3.6,3.7yogitis mostly tested onLinuxbut also works onmacOSandWindows(if using Windows Terminal).- For now only GitHub API is supported
Continuous integration
Installation
pip3 install yogityogit account setup
yogit internal files are stored in ~/.yogit folder.
Auto completion
yogit supports auto-completion. To activate it, you need to setup your shell.
- For Bash, edit your
.bashrcand addeval "$(_YOGIT_COMPLETE=source yogit)" - For Zsh, edit your
.zshrcand addeval "$(_YOGIT_COMPLETE=source_zsh yogit)"
Principle
yogit is able to:
- Show pull requests
- Show pull request reviews
- Show branches
- Show contributions
- Show organization's information
- Help in writing a daily scrum report and post it on Slack
See documentation below for more details.
Documentation
Usage
yogit --help
Account
yogit account setup: Setup yogit (include GitHub integration and optionnaly Slack integration to fully enjoy yogit scrum report command)
yogit account usage: Account API usage
Pull request
yogit pr list [--orga TEXT] [--label TEXT]: List your opened pull requests. If --orga is set, results will be expanded to this specific organization. If --label is set, results will be filtered by pull request labels, you can set multiple --label.
Review
yogit review list: List your reviews on opened pull requests
yogit review requested [--missed]: List pull requests where your review is requested. If --missed is set, only closed pull requests will be listed.
Branch
yogit branch list [--dangling]: List your branches. If --dangling is set, only branches without associated pull request will be listed.
Contributions
yogit contrib list [--from TEXT] [--to TEXT]: List your GitHub contributions within a range of dates.
A contribution is either a pull request or pull request review.
By default this command is listing today's contributions.
yogit contrib stats: Show some GitHub statistics.
Organization
yogit orga list: List organizations you belong to.
yogit orga member list [--orga TEXT]: List members of one organization you belong to.
yogit orga member pickone [--orga TEXT]: Randomly pick one member of one organization you belong to.
SCRUM
yogit scrum report [--date TEXT]: Generate your daily activity report
If Slack integration is setup, report can be published on Slack. Note that report is composed of one or more sections, first section will published as a message, next section will be published as a reply of the first one.
Template of the report can be changed by editing ~/.yogit/scrum_report.yaml
You might need to install xcopy to fully enjoy this command.
Changelog
1.13.0
- Improve
yogit scrum report: list contributions before completing the report - Slack post now handles correctly #channel mentions (member mentions is not working yet)
1.12.3
- Fix config file loading: do not raise an error when file does not exist
1.12.2
- Fix scrum report template migration of
yogit 1.12.0. If you encountered the bug, remove~/.yogit/scrum_report.yamlto get the default one back
1.12.1
- Fix
yogit orga member ...command: GitHub API became less permissive about param types
1.12.0
- Add
--labelfilter toyogit pr listcommand - Add Slack integration: thanks @thomascarpentier for this contribution sponsored by Genymobile for #hacktoberfest. It allows
yogit scrum reportto publish the report on Slack on your behalf. To configure it:yogit account setup
1.11.0
- Change
yogit review requestedoutput: print pull request title, don't print repository url anymore - Add
--missedoption toyogit review requestedcommand
1.10.0
- Add
yogit brbecomesyogit branchcommand - Add
yogit rvbecomesyogit reviewcommand
1.9.0
- Add
yogit orga listcommand - Add
--orgadiscrimator option toyogit orga member list - Add
--orgadiscrimator option toyogit orga member pickone - Improve doc regarding auto completion
1.8.0
- Add
yogit orga member listcommand - Add
yogit orga member pickonecommand - Add
--danglingoption toyogit br list yogit ctcommand is renamed toyogit contrib- Improve update warning wording
- Improve
yogit --versionwording
1.7.2
- Fix
yogitupgrade from1.6.0
1.7.1
- Shit happens
1.7.0
- Add
yogit ct statscommand
1.6.0
- Add
yogit ct listcommand - Add
--datearg toyogit scrum reportcommand - Add indentation ability to
yogit scrum report - Print pretty bullet points in generated scrum report
- Improve documentation
1.5.1
- Replace
yaspinbyHalodep to handle spinner: better handling of pipes and redirects
1.5.0
- Tried
yogiton Windows Terminal and workaround a spinner issue - Print count little by little if request is big
1.4.1
- Fix missing
packagingdependency
1.4.0
- See if pull requests are conflicted in
yogit pr list - Improve
yogit scrum reportUX and make it robust to network access failure - Shorten PR titles in tabulated results (max 50 chars)
1.3.0
- Add update available check
1.2.1
- Improve help
1.2.0
- Add ability to list your current reviews and see outdated ones with
yogit rv list - Dedicated wording when there is no result
- Add "Count: X" statement right after result list
- Show a spinner during request time
- Use bold and emojis to make outputs fancier
1.1.1
- Reinforce
scrum reportcommand (better error handling)
1.1.0
- Add abilitiy to list pull requests of an organization
yogit pr list --orga TEXT
1.0.4
- Fix typo in scrum report, thx @genygilles
1.0.3
- Fix unauthorized error due to too old PyYAML version
1.0.2
- Support pagination for branch listing (fix request timeout)
1.0.1
- Be more specific on GitHub required scopes
- Improve code regarding account setup flow
- Fix sort of pull request list
1.0.0
- Project bootstrap
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file yogit-1.13.0.tar.gz.
File metadata
- Download URL: yogit-1.13.0.tar.gz
- Upload date:
- Size: 19.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/45.2.0 requests-toolbelt/0.9.1 tqdm/4.42.1 CPython/3.6.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
725394b2d9cfca4900f2f6c63848f47bf484069f959ee874e7973809d5c7c29f
|
|
| MD5 |
9ca73d35b35ea7cbcec5d67aa8c2ff5d
|
|
| BLAKE2b-256 |
2e6205b886d501f77673607fd434c5bfc9e74d7a72b3f5595a45fe3717475f8f
|