@ghman_bot is a Telegram bot to work with Github notifications. Bot can notify you on new notification, user can view new unread notifications, put comments by replying to Telegram messages, mark notifications as read, close tickets, merge PRs, etc. To start working you don't need to create GitHub auth tokens manually, the bot is configured as GitHub application and it redirects user to GitHub OAuth page to request permissions on first interraction.
To start using the bot, just start talking with @ghman_bot via Telegram, the bot will ask you to authorize via Github using OAuth2, on Github OAuth page you will be asked to grant access to your notifications. After authorization you may start to use Telegram commands:
/notifications
- to list all unread threads, you can click any thread to see new (unread) messages in the ticket or PR. When you reply to Telegram message with a thread (from/notifications
) you're posting a comment to thread source (issue or PR), so you're responding to a message right in Telegram bot.
If you're interested in contributing, you need to have an account in Zerocracy and read this document: https://github.com/g4s8/ghman/blob/master/CONTRIBUTING.md
If want to submit a bug read this and this.
To propose some changes you need to be assigned as a performer (DEV
role) to
some ticket. Then you have:
- Fork the repo, clone it locally
- Switch to branch for your issue, write a code, make sure it's building with
mvn clean install -Pqulice
command - Submit a pull request, check that CI passed, fix errors if not passed
- Wait for code review, fix or discuss reviewer comments
- Wait for architect to merge (architect may ask additional changes)
- After merge to
master
ask issue author to close the ticket
Git guidelines:
- start all commit message with tiket number, e.g.:
#1 - some message
(to avoid issues with comment char, check this answer: https://stackoverflow.com/a/14931661/1723695) - try to describe shortly your changes in commit message, long description should be provided in PR body
- name your branches starting with ticket number, e.g.
1-some-bug
branch for #1 ticket - use
merge
, notrebase
when merging changes frommaster
to local branch - one commit per change, don't rebase all commits into single one for PR
- avoid
push --force
where possible, it can be used in rare cases, e.g. if you pushed binary file by mistake, then you can remove it withpush --force
or if you mistyped ticket number or message, you can fix it withpush --force
To build and run tests locally you need >=jdk-8
and >=maven-3.*