How to Link Issues Between Jira and GitHub Automatically With 2-Way Sync
This walkthrough will guide you through the process of connecting GitHub and Jira with Unito, so you can quickly sync issues between a GitHub repository and a Jira project with automated 2-way updates. You’ll learn how to sync GitHub issues with Jira issues to share details on development information, deployment information, issue tracking, and more.
We’ll begin with an overview of the integration, how it can be used, then show you how to connect each tool and set rules to determine which issues to sync. Then, you’ll select fields (or details) to keep automatically updated between GitHub and Jira issues.
New to Unito? Here’s more information about our GitHib Jira integration.
By the end of this article, you’ll have a clear, integrated workflow that automatically:
- Creates new Jira tasks, issues or stories based on activity in your GitHub repositories.
- Creates new issues in a GitHub repository based on your activity in a Jira project.
- Updates Jira Cloud and GitHub in either direction automatically whenever manual changes occur.
This integration can be built with Jira Sync directly from your Jira interface or through Unito’s standalone sync platform.
In this article:
Feel free to skip ahead if you’ve already started building your GitHub Jira integration.
- Watch our team set up a GitHub integration with Jira
- Before you connect Jira or a GitHub repository to Unito
- Step 1. Connect GitHub and Jira to Unito
- Step 2. Set a flow direction between GitHub and Jira
- Step 3. Set rules to filter data between GitHub and Jira
- Step 4. Pick fields to link between issues
- Step 5. Launch your GitHub Jira integration
- Technical documentation
- FAQs and Use Cases
Watch our team set up a GitHub integration with Jira
Before you connect Jira or a GitHub repository to Unito
Ensure your Jira Cloud and GitHub accounts are ready for integration. This means setting up your Jira app access and ensuring your GitHub username is linked to the relevant GitHub organization.
Whether you’re syncing data from Jira Work Management, Software Cloud, Data Center or Service Management, you’ll need to configure Jira for Unito access. The Jira account connected to Unito must also have administrator access with global permissions.
Jira setup instructions for Unito
Click here to review the step-by-step instructions to prepare Jira for syncing with Unito
First, set your Jira contact email visibility to anyone from your Jira profile page.
- Log in to Jira through Atlassian.com.
- Click Settings, then select Products.
- On the next screen, click Application links.
4. Enter https://app.unito.io in the Application field and click Create new link.
5. In the “Link Applications” modal window, complete these fields and leave the others blank.
- Application Name: Unito
- Application Type: Generic Application
- Create incoming link: checked
6. In the second form, complete these fields.
- Consumer Key: unito (all lower case)
- Consumer Name: Unito
- Public Key: copy paste the text below
—–BEGIN PUBLIC KEY—–
MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDKYFuFsWD7ShJeazewedP2jUZt
ueK30giaA2QSGfhkryQHdwK0YGVGCgJ42muX/Aw53wdpl7g+7Xq8aO/xV7JjO5RG
e3VSBzKUak0/PhHYrg2Cvrj3hws833f3cXSlntMnT7Y/PGfQYyOUmzNBIha1IRrQ
CHeNnq2VbC6N9SL55wIDAQAB
—–END PUBLIC KEY—–
Click Continue.
GitHub instructions for Unito
Add Unito to GitHub through the GitHub Marketplace if you haven’t already. This article can show you how if you need help syncing GitHub repositories.
Step 1. Connect your Jira and GitHub account to Unito
First, connect your GitHub account and Jira Cloud account to Unito. This process involves granting necessary permissions to Unito for accessing your GitHub repositories and Jira instance.
- Log in to the Unito App and click +Create Flow.
- Jira Sync: Login to your Jira account.
- Click on the Apps button in the top-right.
- Select Sync by Unito.
- Then, click Start Here to connect your tools.
- Select +Add a tool to this flow in either column, and connect your apps. Now, +Choose account to specify the account you want to use.
- From the next drop-down menu, type in the name of the folder or table you want to connect.
- Repeat steps 3 and 4 to connect your other tool with Unito.
- Click Confirm.
Step 2. Pick a direction for new GitHub or Jira issues
Flow direction determines how new issues in GitHub or Jira are created by Unito.
Later we’ll tell Unito which tasks and issues to keep synced. You can choose to have new GitHub repositories sync with an existing Jira project or vice versa.
Select Confirm when you’ve chosen a flow direction.
Learn more about flow direction.
Step 3. Set rules to choose specific issues to sync between Jira and GitHub
Set up rules to filter which GitHub issues and Jira issues to sync. This step ensures that only relevant data is shared between your GitHub organization and Jira software. If you chose a two-way flow, you’ll have to set rules for both directions.
Select Add a new trigger to begin.
You can also remove a trigger by selecting the bin icon on the right-hand side.
In the above examples, we’re syncing issues based on common labels and issue type in Jira and GitHub.
You can learn more about setting up rules here.
Step 4. Choose which fields to sync between github and Jira
Here you can choose which details to sync between GitHub and Jira, such as issue tracking information and deployment frequency data. This ensures that updates in pull requests or Jira issue keys are reflected on both platforms.
First, you’ll be asked whether you want to set up your field mappings from scratch or let Unito do this automatically.
Unito turns the details of your issues into mappable fields that can be synced between tools. These include: assignee, summary, attachment, description, etc. Even your custom fields can sync with Unito!
Here’s a look at our auto-mapped fields between GitHub and Jira:
Most fields will automatically be mapped for two-way updates, but you can modify them individually if you prefer one-way updates in some cases.
You can add additional mappings by selecting +Add Mapping, then Select a field in both tools to pair the fields together.
Click Confirm to proceed.
Find out more about setting field mappings.
Step 5. Launch your GitHub Jira integration
Now it’s time to launch your GitHub-Jira integration. This integration facilitates project management, enhances team visibility, and improves deployment information sharing.
If you followed the steps above, your flow will now automatically create new issues in both tools based on specific activity in the other, while keeping paired fields up to date.
If you have any questions, don’t hesitate to reach out and let us know.
Relevant links and documentation for Jira and GitHub users:
GitHub documentation for Unito users
- Which GitHub APIs Are Used by Unito?
- An Overview of Unito’s GitHub Integration
- GitHub Troubleshooting
- How to Limit Access to Specific or Public GitHub Repositories
- What Permissions Are Required for GitHub Users?
- How to Configure GitHub Enterprise for Unito Access
- How to Re-Authorize Unito Access in GitHub
Jira documentation for Unito users
- A Guide To Unito’s Jira Integration
- How to Configure Jira for Unito Access
- How to Specify Issue Type for New Jira Issues
- Troubleshooting a URL Mismatch Error When Connecting Jira
- What Permissions are Required for Jira Users?
- How to Sync Jira Epics as Parent Tasks
- How to Use ngrok to Connect your On-Premise Jira Server or Data Center to Unito
What’s next after connecting GitHub and Jira with Unito?
Now that you’ve set up your integration between Jira and GitHub, you can unify project management and improve cross-team visibility across tools with real time two way updates. You can also read more about Unito’s integrations for Jira and GitHub to better understand their capabilities and limitations.
- You can duplicate this flow to build a more powerful workflow by sending issues to and from multiple other repositories or projects, perhaps one for bug fixes and another for feature requests.
- Having issues with your issues? Check out Unito’s Troubleshooting Guide for GitHub users or our technical guide for Jira users.
- Need some inspiration? Here’s how we use this workflow to collaborate on dev work with external contractors.
Why connect GitHub with Jira?
Connecting these two powerful tools saves time, helps teams and squads collaborate more efficiently, and turns both GitHub and Jira into shared sources of truth.
The end result will be a simple workflow that enables you to automatically create and sync new issues in one repo or project, based on manual changes in the other. This is most useful for: software developers, quality assurance teams, product managers, teams practicing DevOps, customer support, or cybersecurity.
Streamlined collaboration between dev teams
Unito’s 2-way integration eliminates the need to search for specific issues or tasks. Instead, teams can simply stay in their preferred GitHub or Jira interface and watch those work items appear in their projects and repositories.
Facilitate software project management
Unito’s GitHub Jira integration becomes an invaluable asset for project managers juggling multiple teams at once. You can eliminate tool-switching and human error so you can focus on overseeing projects and reporting on progress.
Optimize version control with a united source of truth
One recurring challenge faced by teams in multiple tools is the inevitable data silo that crops up. This can be especially problematic where version control is concerned. Unito simplifies version control between Jira and GitHub by keeping issues synced between each tool in real-time.
Essential Unito features for this use case
Custom fields
Sync custom fields from GitHub to Jira, preserving the uniqueness of your projects.
GitHub uses custom fields to give users more control over their projects. Unito can sync these fields from GitHub to other apps and back so you don’t lose any customizability. Unito’s pricing page has all the details on how many custom fields can by synced according to your plan.
Advanced mappings
For many integration solutions, you’re a bit stuck with what the tools give you. That makes it tough to truly recreate the environment from one tool in the other. Unito lets you customize your field mappings so that isn’t the case. When you’re using a flexible tool like Notion, that’s essential.
Smart Commits: Use smart commits to link commit messages directly to Jira issues, automating status updates and work logs.
Repository Selection: Choose specific repositories for integration, maintaining relevance to your current project management needs.
FAQ
Does Unito access my GitHub code repositories?
- No, Unito will never access your GitHub code repositories. While it syncs GitHub issues, Unito doesn’t actually need access to your code. We request the minimum access possible, but unfortunately GitHub does not offer a permission scope for only issues.
How does the GitHub-Jira integration improve project management for software development teams?
By linking GitHub repositories to Jira projects, teams can automate the tracking of code changes, pull requests, smart commits, and issue resolution, enhancing collaboration and efficiency.
Can I integrate multiple GitHub organizations with a single Jira instance?
Yes, this integration works to enable any GitHub repository to connect with a Jira instance, enabling you to manage several projects and teams within a single Jira Cloud account.
How do I ensure that only relevant issues are synced between GitHub and Jira?
You can set up rules and filters based on labels, issue keys, or other criteria to ensure that only pertinent GitHub issues from a new repository and Jira issues are synchronized.
How does the integration automatically sync deployment information between GitHub and Jira?
Integrating Jira with your GitHub organization leverages real-time syncing to automatically update deployment information in both tools. When a new deployment occurs in GitHub, the corresponding issue in Jira is updated with this information, and vice versa, ensuring both repositories are always in sync.
Can I add more apps to the GitHub-Jira integration with Unito, and how does that work?
Yes, you can configure the integration to include other project management or development tools, even additional Jira accounts, creating a comprehensive ecosystem that automatically works together, ensuring seamless data flow and collaboration across all platforms.
How do I configure the integration to include branch names in Jira issues?
To include branch names in Jira issues, you’ll need to configure the field mappings in Unito when you integrate GitHub. This involves specifying that the branch name in a GitHub repository should be synced with a custom field in the Jira issue. This setup ensures that team members can see relevant branch names directly within Jira, enhancing clarity and traceability.
What is the significance of the issue key in syncing repositories, and how is it used?
The issue key is a critical component in syncing repositories as it serves as a unique identifier for issues after you integrate Jira. So, when connected GitHub, the issue key can be used to link commits, pull requests, and branch names directly to the corresponding Jira issue, automating the tracking of changes and facilitating easier navigation between the two platforms.
How does adding comments in GitHub affect the Jira issue, and is this updated automatically?
Adding comments in GitHub to issues or pull requests that are linked to a Jira issue will automatically update the corresponding Jira issue with these comments. And so, this ensures that all discussions related to an issue are consolidated and accessible in both tools, fostering better communication and collaboration.
Can the integration help reduce cycle time by automatically updating issues across platforms?
By ensuring that updates, such as status changes or new comments, are automatically reflected across both GitHub and Jira, the integration helps in reducing the cycle time.
It minimizes the need for manual updates and checks in Jira server or GitHub cloud, streamlining the workflow and helping teams to move faster from development to deployment.
Who should sync GitHub and Jira with Unito?
Imagine a software development team working on a new feature for their product or application. The team might use GitHub for code repository management, pull requests, version control, and tracking code-related issues.
Meanwhile, a project management tool such as Jira software, on the other hand, might be used for sprint planning or tracking non-code related work.
The biggest differentiator is the power of real-time 2-way updates between issues in Jira and GitHub. No native integration can keep your Jira tasks or issues in sync with a GitHub repository in real-time. So, while it is possible to simulate 2-way sync with a series of complex automations and other platforms, only Unito was built to achieve this quickly and easily for users of all backgrounds and experience.
So, once you integrate Jira and integrate GitHub with Unito, your development teams will be able to manage code and project tasks in a unified system, streamlining sprint methodologies and agile processes. Pull requests in GitHub can be linked to tasks in Jira Software, providing a comprehensive view of project management efforts.