How to Sync GitHub with Asana | Unito 2-Way Integration
Github Asana sync
Github Asana sync

How to Sync GitHub with Asana

This guide will show you how to sync Asana and GitHub automatically through Unito’s 2-way no-code integration for project management. Connecting GitHub and Asana with automation eliminates the need for someone on your team to manually check repos or projects for updates. This can be useful for quickly submitting bug reports or feature requests, supporting software development teams, coordinating work between dev teams and the rest of your organization, and so on.

You can use this workflow to streamline software development management; the ticketing progress; or to align comments, assignees, custom fields, and more.

Why sync GitHub and Asana with Unito?

Syncing GitHub issues with Asana tasks through Unito enables you to automatically populate your repos with data from Asana projects and vice versa. 

There are a wide variety of business use cases for any team that relies on ticketing in GitHub, including: tech companies, startups, professional service providers, and others. This automation solution could be used to simplify the process of pushing bug reports and feature requests to GitHub from other sources. Instead of asking someone to work in an unfamiliar interface, you could simply create a task in Asana with details about the request and watch that information turn into a GitHub issue automatically.

Before you connect Asana and GitHub to Unito:

  • Ensure you have an account with the right permissions in both tools.
  • Add Unito to GitHub through the GitHub Marketplace.

Step 1. Connect GitHub and Asana to Unito

Navigate to the Unito App and select +Create Flow. On the next screen, select Start Here to connect GitHub and Asana. Choose the accounts you wish to connect to Unito. Then, specify a single Asana project and GitHub repository.

Connect GitHub and Asana to Unito
In the above example, Fanny has connected Asana tasks from her project: “Projects overview” with GitHub issues from the repository: “fannylaveau/repo1”.

When you’re ready, select Confirm.

Step 2. Set flow direction between GitHub and Asana

Flow direction determines how new GitHub issues or Asana tasks are created by Unito. Later, you’ll be able to add field mappings to determine which details of your issues and tasks will then stay in a real-time sync.

In our demo, we’ll select a two-way flow so that certain Asana tasks will trigger the creation of new GitHub issues and vice versa. We’ll determine exactly how that happens in the next step.

Set flow direction between GitHub and Asana
With a two-way flow, certain new GitHub issues will create new Asana tasks, and certain new Asana tasks will create new GitHub issues.

Note: Regardless of flow direction here, you will later be able to decide whether or not each individual field (task and issue details) will sync one-way or two-way with Unito.

Select Confirm when you’ve chosen a flow direction.

Step 3. Set rules to filter data between Asana tasks and GitHub issues

This is where we can set up triggers to determine which actions taken in Asana will cause new issues to appear in GitHub, and where.

Select Add a new trigger to begin setting your rules. There can be some variability here depending on your particular setup in each tool.

Set rules to filter data between your Asana tasks to GitHub issues
In this case, Fanny has told Unito to send all new tasks created after July 25, 2022 to a specific GitHub repo, Repo1. After you’ve completed this demo, you can try to create a workflow with multiple repos.

In our demo, the Asana project was created specifically to sync new tasks with GitHub, so no other filters are required. If you want to sync specific tasks from a project, but not all tasks, you can add a trigger based on other variables, such as Asana tags.

Find out more about setting rules.

Step 4. Set up field mappings between Asana and GitHub

Fields represent the details of your Asana tasks and GitHub issues. Comments, due dates, assignees, descriptions, etc. all count as fields in Unito.

What are Field Mappings?

First, you’ll be asked whether you want to set up your fields from scratch or let Unito do so automatically. If you select auto-map, you can still change any mappings you want afterwards. If you prefer a DIY approach, start from scratch.

Your fields will be automatically mapped for two-way updates, but you can modify each individually if you prefer a one-way sync in some cases. A two-way update means that changes from either Asana or GitHub will be applied to the other. A one-way update restricts those changes accordingly.

Select + Add mapping, then Select a field in both GitHub and Asana to pair two fields together.

Set up field mappings between Asana and GitHub
Here is our completed set of field mappings. As you can see, they are fairly intuitive: comments become comments, tags become labels, etc.

You can select any field with a gear icon to add an additional layer of customization.

Unito Field Mappings Customization GitHub Asana
In this case, there are multiple status options, so we’re just confirming that closed status in Asana = closed status in GitHub. You can add your own layers of complexity in each tool however, in case you have a variety of statuses you’d like to map here.

Click Confirm when you’re satisfied with your field mappings to proceed.

Step 5. Save, close and launch your Asana – GitHub workflow!

And that’s it! You’ve just completed a flow between GitHub and Asana. Congratulations!

If you’ve followed the steps above, your flow will now: 

  • Create an issue in GitHub based on Asana tasks from our specified project.
  • Enable technical and non-technical teams to collaborate between Asana and GitHub with a view on task progress.

Below you can see a few examples of our synced tools:

If you have any questions, don’t hesitate to reach out and let us know. 

What’s next after a 2-way Asana-GitHub integration?

If you’re interested in seeing what else you can do with Unito, here are some articles to help you power up your workflows: