GitHub! Code better together with GitHub and Microsoft Teams
Published May 30 2019 03:48 PM 92.2K Views
Microsoft

Developers can now collaborate from anywhere using GitHub app in Microsoft Teams! GitHub app in Teams support Tab, Messaging Extension, Bot and Personal app capabilities.

 

How to get started  

Install GitHub for Microsoft Teams application from Microsoft Teams App Store. You are required to sign in with your GitHub account to leverage the capabilities of application. If you do not see GitHub app in Teams app store, work with your O365 admin to have GitHub app enabled for your tenant.

 

Tab

You can configure GitHub tab in any of your Teams by adding it from tab gallery. While configuring the tab, select the repository for which you would like to pin the issues or pull requests view. Once the tab is pinned, everyone in the team can view the tab but only those who’ve access to the repository would be able to see the issues/pull requests content. Issues and pull requests are rendered as hyperlinks in the tab which enables you to open them in the browser window to take further action.

 

Tab.png

 

Bot

GitHub Bot once installed lets you:

  • Access list of repositories, issues and pull requests
  • Subscribe/unsubscribe to GitHub repositories
  • Receive notifications for the activities performed in the subscribed GitHub repositories
  • Search issues or pull requests
  • View details of an issues or a pull request
  • Add comments to issues or pull requests
  • Create/close/reopen issues

‘Help’ command can provide detail on how to use all the bot commands listed above to perform different actions. You can use help command in unsigned mode as well.

 

bot1.png

 

Messaging Extension (ME)

GitHub ME allows you to have in-context conversation for any issues or pull requests across any of your repositories. By default, the search is done across all the repositories you’ve access to. From settings menu you can choose to restrict the search to a repository, if you would like.

 

With GitHub messaging extension has two tabs:

  • Pull Requests: List of recent pull requests for your repositories.
  • Issues: List of recently updated issues

Search will look for the keywords in the issue/pull request title and display results accordingly. You can use ME capability in channel/1:1 chat or group chat scope.

 

ME.png

 

Personal App

GitHub application is supported in personal scope as well. This give you holistic view of your GitHub work items across all your repositories that you are contributing to or own. GitHub personal app support following tabs:

  • Conversation: you can do 1:1 conversation with the bot in personal scope.
  • Created PRs: list of all the pull requests you created across all your repositories
  • Created Issues: list of all the issues created by you across all your repositories
  • Assigned PRs: list of all the pull requests assigned to you for review
  • Assigned Issues: list of all the issues assigned to you

personal app.png

 

GitHub Notifications

You can configure GitHub connector to receive notifications for one or more of your repositories once you login with your GitHub account. Notifications can be configured for below items:

  • Pull requests
  • Pushes
  • Issues
  • Commit comments
  • Issue comments
  • Pull request comments

 

You can also choose to take actions from the notifications card. These actions will be dependent on what type of notifications it is. Ex: For pull request – you can add a comment, close, merge etc. For a new commit, you can only add comment or view in GitHub.

 

Notifications.jpg

 

47 Comments
Copper Contributor

Cool! I'll be the first "Like"! 

Silver Contributor

How is this new? I have tried to install GitHub app in Teams a month or so ago. Or was it in some kind of preview?

Copper Contributor
Nice, but is there an equivalent from Azure DevOps? You can add boards as tabs, but is there a bot as well?
Copper Contributor

I like this integration but I'm wondering if other solutions, particularly PowerApps, could be integrated with GitHub. This would allow the complete application lifecycle development entirely in the Office 365 ecosystem. 

Copper Contributor

I'm getting a warning banner at the top of the signin window: Please note that GitHub no longer supports your web browser. I'm trying to sign in and am on the Authorize Microsoft Teams GitHub Bot page, but the Authorize button is disabled. Other controls on this site aren't working either like the expand chevrons for permission access. It seems like this page is not fully functioning. 

Microsoft

@oleg - Previous app only had tab capability. This is a fledged app with Bot, ME etc. capabilities.

@jonesron - We Just released Azure Pipelines app for approving you releases. Thats a bot. We are working bringing additional updates to Azure DevOps pipeline on Teams in coming months. Stay tuned!

@Chuck Steel - That would be a question for PowerApps team. I'll try to find the owner who can answer this for you.

@paulikeda - What browser are you using? Here's the list of browsers supported by GitHub - https://help.github.com/en/articles/supported-browsers

Copper Contributor

Does this support GitHub Enterprise?

Copper Contributor

@Amit Oberoi  The issue and commit notifications from the connector are lacking far behind the official github integration in Slack.

The commit notification doesn't mention the branch info anywhere. Where as the issue notification fails to render markdown content and newlines properly. I have sent feedback various times but have received no response or acknowledgement.

Also there is no way to filter commit notifications by branch (in master or other branches).

 

Copper Contributor

@Amit Oberoi Is this post about the GitHub app from Tata Consulting (app ID 37567f93-...)? I had to ask the O365 Admin to add this to our tenant and there was some confusion over which app to install.

Microsoft

@Carlo-Quinonez Yes, that's correct.

Copper Contributor

@Amit Oberoi Thank you. Is there a way to provide feedback on this plugin? It doesn't seem to support "Internal" repositories for Enterprise customers. The website link in the app description is just the TCS homepage. Is the plugin open-source?

Copper Contributor

@paulikeda I'm also getting the warning banner at the top of the signin window "Please note that GitHub no longer supports your web browser."

 

The authorize CTA is also disabled and I'm unable to authenticate the plugin. 

Copper Contributor

We're seeing the same issues others have -- the "Authorize" button is disabled and the chevron's don't work.  I suspect this is because Teams is using an embedded Internet Explorer window (not Edge) and Github no longer supports IE.  @Amit Oberoi can you verify this is the problem?

Copper Contributor

I'm getting a warning banner at the top of the signin window: Please note that GitHub no longer supports your web browser. I'm trying to sign in and am on the Authorize Microsoft Teams GitHub Bot page, but the Authorize button is disabled. Other controls on this site aren't working either like the expand chevrons for permission access. It seems like this page is not fully functioning. 

Copper Contributor

I'm also experiencing the same problem and there's no solution available, we need some assistance...

clipboard_image_0.png

 

Copper Contributor

UPDATE: For those who do not want to wait forever for a response. After some tinkering, it seems that if you open Teams from a compatible browser (I used Firefox) and add the Tab to the channel there (https://teams.microsoft.com), the OAuth token is created in your GitHub account, allowing your Desktop client regain access to the Tab and Bot features (restart it). A hack, but at least I'm back and running using GitHub from MS Teams Desktop...

Silver Contributor

Thanks for a workaround hint. Microsoft is busy with announcing new things and not with actually making them work..

Copper Contributor

Hi thanks first for this bot,

but I have two problems:
  1. I made already a sign in and wanted to make a re-sign in but after the signout now, when I hit the "Sign in" button after the command no window at all pops up. Is there somewhere a config file to write to? I have neither found somewhere an official wiki
  2. I want to subscribe to an organization repositories but it always says that it can not find it, even if I provide a valid repo name. Btw I am admin of this organization. Are organization supported so far?
Microsoft

@PatrickGrub - 
1. This should be fixed. Please let us know if you're still encountering this issue.

2. At this time, we support subscribing to usernames. 

Copper Contributor

Hi, is there an official support channel for this App? I can't seem to get some things working and I'd prefer not to discuss this through a public forum but a more dedicated channel, or is this currently the only way to contact the dev team?

Regards,

B.

 

Microsoft

@BooVeMan please get in touch with Microsoft Customer Support through support.microsoft.com, or email us at microsoftteamsdev@microsoft.com

Copper Contributor

@ErinBailie thank you so much, I can't seem to get notifications to work as easily as I did with slack... I did the integration but nothing shows up anywhere...

Copper Contributor

@Amit Oberoi Is it possible to disable or remove merge button when a pull request is created?

An unintentional click will merge the code without even asking. Same for clode. What if I want only "View On Github" button?

ysrmmz_0-1581784722801.png

 

Copper Contributor

@Amit Oberoi & @ErinBailie 

 

I just added GitHub to my Teams. When I want to subscribe to my organization or any repo under the organization it just says "

Either repository name does not exists or you are not the owner of the repository."
 
I made sure the organization granted the permissions when authorizing the integration. Any help?
 
Thanks.
Microsoft

@Tech_Guru at this time, subscription is supported for usernames. See comment from January. 

Copper Contributor

@ErinBailie got it. But does that mean I cannot subscribe to any repo under my organization? When can I expect the support to subscribe to organizations?

 

Thanks.

Copper Contributor

We started using this app in our organization, but for some reason, upon new commits, no notification is being delivered by the bot. Even though the Bot is subscribed to that repository. It is because the repository is private (even though the owner subcribed OdooBot to that repo himself)?

Thanks!

Copper Contributor

@ErinBailie - To confirm, are you saying that it is not possible to subscribe to a 'team/organisation' GitHub account repository? 

 

If so, this seems like a major flaw in the usefulness of this integration, as most users of Microsoft Teams will be using an organisational GitHub account?

 

I feel as if I am missing something?

Copper Contributor

Any progress on supporting the new "Internal" repo types on Github? 

Copper Contributor

Adding own organization URL for GitHub.
It's not possible currently. The app opens by default www.github.com .
How to add my own organization URL e.g. https://xyz-github.mycompany.net?
@Amit Oberoi 

Microsoft

@Tech_Guru and @JonathanPickr - not at this time. We hope to have an update soon with this capability!

 

@fred-cardoso - hmm, we support notifications from private repositories. I'd recommend you file a support ticket to get that sorted out. 

 

@aa_bb_tt - this sounds like you have GitHub Enterprise. We have a separate Teams app for Enterprise instances, called "GitHub Enterprise". 

Copper Contributor

@ErinBailie Any progress on supporting the new "Internal" repo types on Github?

Copper Contributor

Hi, @ErinBailie . When do you think, github will access organization repositories ?
We moved from slack to teams and that is the only we only have at the moment. But it worries us whether we should go back to slack again...

:(

 

Copper Contributor

Just to be absolutely sure, I am getting this error:

 

Either repository name does not exists or you are not the owner of the repository.

When adding a private repository within a GitHub organization (for which I am an admin), and that's because that isn't supported? :suprised:
Microsoft

@davetapley - the integration doesn't currently support private repositories, correct. 

Copper Contributor

Is there any further update when we will likely get the ability to connect to a GitHub Organisation?

Copper Contributor

I just tried the "GitHub Enterprise" connector, and it works with my GitHub Organization. It is essentially a special webhook for GitHub. I previously tried the generic webhook connector but never got it to work (invalid payload). Seems the "GitHub Enterprise" connector overcomes this problem.

 

Works with private organization repositories too.

 

Edit: Seems it works only individual repositories in the organization. I cannot get the enterprise connector to work as a webhook for the entire organization. I get a "We couldn’t deliver this payload: Service Timeout" error.

Copper Contributor

Don't want to bash on Microsoft but this Github plugin (whether made by Tata consultancy or not, it doesn't matter - it is made at the request of MS) is shamefully bad.

 

We've just moved our company from Slack to Teams and the experience has been dreadful. This plugin is just one in a long list of idiosyncrasies and headscratching moments.

 

But about this plugin. Some things off the top of my head:

 

- private repositories cannot be subscribed to (even though they're detected by `repositories` command)

- three different Github apps (one for bot and one for tabs and one for Webhooks - all three having similar permissions and totally confusing names). All apps closed source...

- when using it to create a webhook - you need to be admin of a repo and it will use your own username. Really? Are all software engineers in Microsoft admins of all their github repositories? How can that be used in an organization? No organization with more than 5 engineers will grant all engineers admin privileges on all repos. Basically this makes the whole webhook functionality useless. Have to use the Github Enterprise app for this...

- I'm watching multiple private repos in Github - 0 notifications about these repos. In fact 0 notifications in general.

- Commenting on a webhook pull request message doesn't work (despite the button being present there)

- painfully slow most of the times (sometimes completely times out for minutes)

- if you disable access to the Organization in Github, the Bot/Tabs apps stop functioning silently (they'll  not propmt for access again or show any sort of error, just they'll start returning 0 results no matter the query).

- no way to search PRs/ Issues in Tabs.

 

Seriously disappointed about this plugin in particular and Teams in general.

Microsoft

@valentinflorea - thanks for your feedback! It sounds like you may have some tenant or organization settings which are affecting the integration. Please reach out to Teams Support to get that sorted out. 


Microsoft

@valentinflorea Thanks for your feedback. We are currently working on building a seamless GitHub + Teams integration story where most of your concerns should be addressed. It would be great if we can have a short sync up. I would like to share our plans and get your feedback.

Copper Contributor

Thank you for getting back to me Erin, Ashok :)

 

Feel free to contact me via my e-mail (it's associated with my profile here so I hope you can reach me) and then we can schedule a sync-up.

 

As for the Tenant or Organization settings that Erin mentioned - I think all the problems I listed are related to the github integration and not MS Tenant /Organization settings. Some are just buggy features or weird quirks IMO(unability to subscribe to private repos, 3 github apps for 1 single Teams app, commenting to PR doesn't work despite having a button for it, etc). Some are strange requirements (the requirement to be admin of a GH repo in order to get notifications from it).

Microsoft

Feature request for the Issues Tab - let me add a filter to the query please.

Copper Contributor

Do we have a similar app like this for git hub enterprise? I found a git hub enterprise app but its not possible to add it as a tab. 

Copper Contributor

Please add in Private Repo functionality. Thanks!

Microsoft

Hi Everyone,

 

I am from GitHub ChatOps team. We have released a first class GitHub integration with Microsoft Teams which is built and maintained by GitHub. This is a compliant app published under Microsoft Corporation.

 

This new GitHub app for Microsoft Teams comes with many enhanced capabilities.

  • Getting started (signin, authorize and subscribe) flow is very much simplified.
  • You can subscribe to both public and private repositories. You can also subscribe at an organization/account level.
  • You can customize your subscriptions at a feature level (i.e. pulls, issues, commits, comments, reviews etc.) and receive notifications only for a specific features of your choice. You can also filter notifications based on labels. 
  • Crisp, concise and well structured notification cards with all the necessary info that helps you in taking decisions.
  • Threading of notifications on the issue/pr card to give you all the context in one place, reduce the noise in the channel and allows you to collaborate better and take next steps(create/open/close/comment on issues and comment on prs).
  • Better performance with quick response time for your commands.

And more features to come and are in pipeline like Schedule reminders and support for GHES.

 

Please try it out and share your feedback. 

For more information, visit teams.github.com and/or our product documentation

@ErinBailie for visibility.

 

Thanks,

Ashok.

 

Copper Contributor

I've installed this in MS Teams yesterday. Since then, it's properly notified the channel of 4-5 commits.

 

This morning it didn't register a commit. As a test, I did another commit and it picked up this second commit fine. 

 

... anyone else noticing intermittent issues with registering a commit?

Microsoft

@tcsmith314 - I'm sorry you're experiencing unexpected behavior. 
We'd love to hear more details about the issue you're experience on the public issue forums in GitHub - you can find them here. https://github.com/integrations/microsoft-teams/issues?q=is%3Aissue+is%3Aopen 

Thanks!

Version history
Last update:
‎Jan 26 2021 01:13 PM
Updated by: