Product Development · July 21st, 2023

Native Two-Way Repo Syncing for GitHub & GitLab

Dan Pastori@danpastori

One of the most important features we've developed for Bugflow is Two-Way Native Repo syncing for GitHub & GitLab. Whether your project manager is reporting a bug, or a customer is submitting feedback, we strive to get that feedback to the right place as quickly as possible. By natively integrating with GitHub and GitLab, as soon as the feedback is reported, it's on Bugflow and getting routed to your project repo. Developers then have instant access to the feedback, all the meta data necessary to speed up the fix, and can start debugging immediately.

How it Works

Once the feedback is recorded and submitted via the API it's stored in our database immediately and a queue process is initiated. This allows the user submitting the feedback to quickly record more and not wait for the feedback to hit the repos through an API (a slightly longer process).

When our queue grabs the feedback, we load the information that you set up for routing the feedback. Which repo, what labels should be assigned, who should it be assigned to, etc? We then take that feedback and submit it to the repository directly from Bugflow making the process seamless and efficient.

No Third Party Middleman

We chose not to use a third party gateway for repo submissions for a variety of reasons. Most importantly is we wanted to be able to adapt as quickly as possible to changes from GitHub and GitLab to ensure you can use Bugflow with the latest and greatest features like the new GitHub Projects. Both platforms change dynamically and we want to be able to adapt as quickly as possible.

Second, we are continually enhancing Bugflow, adding new feedback features, new metadata, and new integrations to assist your development and product creation. We want you to be able to use these features right away and not have to adjust settings all over the place or wait for an update from a third-party. By writing native integrations, this is possible.

Finally, and most importantly, we want to ensure that your data is secure. By writing native integrations, we can ensure that your data is secure and not being passed through a third party. We take security very seriously and want to limit the steps it passes through to only places you trust.

This is awesome, but we've only talked about one direction.

What makes this a "two-way" sync?

Two-way sync is where the magic happens. When you install Bugflow on GitHub or GitLab, we create a webhook that allows bug data to be synced back to Bugflow. When a change is made, we grab the data and keep the local Bugflow data in sync.

This functionality also works for new milestones, labels, assignees, etc. Create a new label on GitHub, it's instantly available in Bugflow to start assigning. Close an issue from a push with GitLab? The issue is flagged as closed in Bugflow.

Keeping your data in sync both directions allows us to build features that work with your development process and to speed up communication and debugging.

Platform For Further Enhancements

Our vision of Bugflow heavily relys on these native integrations. We want to be able to build features that work with your development process and to speed up communication between customers and project managers. We have a lot of exciting features in the pipeline that will be built on top of this foundation and can't wait to share them with you!

If you have any questions about how this works, or how to get started using Bugflow, please reach out to us on Twitter (@danpastori) or hop on our Discord Channel.

🚀 We're building in public

Be the first to know of the latest Bugflow news.
    Dan Pastori
    Jay Rogers