Skip to main content

Auto-create GitHub PRs & JIRA updates from git commit commands (multi-repo)

Workflow preview

Workflow preview
100%
Auto-create GitHub PRs & JIRA updates from git commit commands (multi-repo) preview
Open on n8n.io

Important notice

This workflow is provided as-is. Please review and test before using in production.

1. Workflow Overview

This n8n template from Intuz provides a complete and automated solution for scaling your DevOps practices across multiple repositories. Are you tired of the repetitive dan...

Best for

  • DevOps automation workflows
  • advanced n8n builders looking for reusable templates

Tools used

n8n-nodes-base.code, n8n-nodes-base.if, n8n-nodes-base.httprequest, n8n-nodes-base.stopanderror, n8n-nodes-base.jira, n8n-nodes-base.merge, n8n-nodes-base.webhook, n8n-nodes-base.slack

Source and attribution

This workflow is cataloged by N8N Workflows and links back to its original n8n.io source page by Intuz .

Original n8n.io source

1.1 Workflow description

Title
Auto-create GitHub PRs & JIRA updates from git commit commands (multi-repo)
Workflow name
Auto-create GitHub PRs & JIRA updates from git commit commands (multi-repo)

This n8n template from Intuz provides a complete and automated solution for scaling your DevOps practices across multiple repositories.

Are you tired of the repetitive dance between git push, creating a pull request in GitHub, updating the corresponding task in JIRA, and then manually notifying your team in Slack, or Notion?

This template puts your entire post-commit workflow on autopilot, creating a seamless and intelligent bridge between your code and your project management.

By embedding specific keywords and a JIRA issue ID into your git commit commands, this workflow automatically creates a Pull Request in the correct GitHub repository and updates the corresponding JIRA ticket. This creates a complete, centralized system that keeps all your projects synchronized, providing a massive efficiency boost for teams managing a diverse portfolio of codebases.

Who This Template Is For?

This template is a must-have for any organization looking to streamline its software development lifecycle (SDLC). It’s perfect for:

  • Development Teams: Eliminate tedious, manual tasks and enforce a consistent workflow, allowing developers to stay focused on coding.
  • DevOps Engineers: A ready-to-deploy solution that integrates key developer tools without weeks of custom scripting.
  • Engineering Managers & Team Leads: Gain real-time visibility into development progress and ensure processes are followed without constant check-ins.
  • Project Managers: Get accurate, automatic updates in JIRA the moment development work is completed, improving project tracking and forecasting.

Step-by-Step Setup Instructions

Follow these steps carefully to configure the workflow for your environment.

1. Connect Your Tools (Credentials)

  • GitHub: Create credentials with repo scope to allow PR creation.
  • JIRA: Create an API token and connect your JIRA Cloud or Server instance.
  • Slack: Connect your Slack workspace using OAuth2.
  • Notion: Connect your Notion integration token.

2. Configure the GitHub Webhook (For Each Repository)

This workflow is triggered by a GitHub webhook. You must add it to every repository you want to automate.

  • First, Save and Activate the n8n workflow to ensure the webhook URL is live.
  • In the n8n workflow, copy the Production URL from the Webhook node.
  • Go to your GitHub repository and navigate to Settings > Webhooks > Add webhook.
  • In the Payload URL field, paste the n8n webhook URL.
  • Change the Content type to application/json.
  • Under "Which events would you like to trigger this webhook?", select "Just the push event."
  • Click "Add webhook." Repeat this for all relevant repositories.

3. Configure the JIRA Nodes (Crucial Step)

Your JIRA project has unique IDs for its statuses. You must update the workflow to match yours.

  • Find the two JIRA nodes named "Update task status after PR" and "Update the task status without PR."
  • In each node, go to the Status ID field.
  • Click the dropdown and select the status that corresponds to "Done" or "Development Done" in your specific JIRA project workflow. The list is fetched directly from your connected JIRA instance.

4. Configure Notification Nodes

Tell the workflow where to send updates.

  • For Slack: Open the two nodes named "Send message in slack..." and select your desired channel from the Channel ID dropdown.
  • For Notion: Open the two nodes named "Append a block in notion..." and paste the URL of the target Notion page or database into the Block ID field.

5. Final Activation

Once all configurations are complete, ensure the workflow is Saved and the toggle switch is set to Active. You are now ready to automate!

Customization Guidance

This template is a powerful foundation. Here’s how you can adapt it to your team's specific needs.

1. Changing the PR Title or Body:

  • Go to the "Request to create PR" (HTTP Request) node.
  • In the JSON Body field, you can edit the title and body expressions. For example, you could add the committer's name ({{$('Webhook').item.json.body.pusher.name }}) or a link back to the JIRA task.

2. Adapting to a Fixed Branching Strategy:

  • If your team always creates pull requests against a single branch (e.g., develop), you can simplify the workflow.
  • In the "Request to create PR" node, change the base value in the JSON body from {{...}} to your static branch name: "base": "develop".
  • You can then remove the base branch logic from the "Commit Message Breakdown" (Code) node.

3. Modifying Notification Messages:

  • The text sent to Slack and Notion is fully customizable.
  • Open any of the Slack or Notion nodes and edit the text fields. You can include any data from previous nodes, such as the PR URL ({{ $('Request to create PR').item.json.body.html_url }}) or the repository name.

4. Adjusting the Commit Regex for Different Conventions:

  • This is an advanced customization. If your team uses a different commit format (e.g., (DEV-123) instead of DEV-123), you can edit the regular expression in the "Commit Message Breakdown" (Code) node. Be sure to test your changes carefully.

5. Adding/Removing Notification Channels:

  • Don't use Notion? Simply delete the two Notion nodes.
  • Want to send an email instead? Add a Gmail or SMTP node in parallel with a Slack node and configure it with the same data.

Connect with us

For Custom Worflow Automation

Click here- Get Started

1.2 Logical Blocks

This catalog entry is organized from the workflow JSON. The node-level section below shows the executable blocks available for review before importing the template.

2. Block-by-Block Analysis

Block 1 - Commit Message Breakdown

Type / Role
n8n-nodes-base.code - code
Config choices
Version 2

Block 2 - Check for PR commands

Type / Role
n8n-nodes-base.if - if
Config choices
Version 2.2

Block 3 - Request to create PR

Type / Role
n8n-nodes-base.httpRequest - httpRequest
Config choices
Version 4.2

Block 4 - Invalid commit message

Type / Role
n8n-nodes-base.stopAndError - stopAndError
Config choices
Version 1

Block 5 - JIRA Task does not exist

Type / Role
n8n-nodes-base.stopAndError - stopAndError
Config choices
Version 1

Block 6 - Check for task completed command

Type / Role
n8n-nodes-base.if - if
Config choices
Version 2.2

Block 7 - Get task details for PR

Type / Role
n8n-nodes-base.jira - jira
Config choices
Version 1

Block 8 - Get Task Details without PR.

Type / Role
n8n-nodes-base.jira - jira
Config choices
Version 1

Block 9 - Check if task exist

Type / Role
n8n-nodes-base.if - if
Config choices
Version 2.2

Block 10 - Update task status after PR

Type / Role
n8n-nodes-base.jira - jira
Config choices
Version 1

Block 11 - Check whether a PR already exists

Type / Role
n8n-nodes-base.if - if
Config choices
Version 2.2

Block 12 - Update the task status without PR

Type / Role
n8n-nodes-base.jira - jira
Config choices
Version 1

Block 13 - Check if PR exists

Type / Role
n8n-nodes-base.httpRequest - httpRequest
Config choices
Version 4.2

Block 14 - Check if task exists

Type / Role
n8n-nodes-base.if - if
Config choices
Version 2.2

Block 15 - Code

Type / Role
n8n-nodes-base.code - code
Config choices
Version 2

Block 16 - Merge

Type / Role
n8n-nodes-base.merge - merge
Config choices
Version 3.2

Block 17 - Webhook

Type / Role
n8n-nodes-base.webhook - webhook
Config choices
Version 2

Block 18 - Send message in slack with PR

Type / Role
n8n-nodes-base.slack - slack
Config choices
Version 2.3

Block 19 - Send message in slack without PR

Type / Role
n8n-nodes-base.slack - slack
Config choices
Version 2.3

Block 20 - Append a block in notion with PR

Type / Role
n8n-nodes-base.notion - notion
Config choices
Version 2.2

Block 21 - Append a block in notion without PR

Type / Role
n8n-nodes-base.notion - notion
Config choices
Version 2.2

Block 22 - Sticky Note1

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 23 - Sticky Note

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 24 - Sticky Note2

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Showing the first 24 of 39 workflow blocks. Download the JSON for the full node graph.

3. Summary Table

Workflow Auto-create GitHub PRs & JIRA updates from git commit commands (multi-repo)
Complexity advanced
Nodes 39
Categories DevOps
Author Intuz
Published 06 Aug 2025

4. Reproducing the Workflow from Scratch

  1. 1. Download the workflow JSON

    Use the JSON export at /data/workflows/7048/7048.json as the source template for this automation.

  2. 2. Import the template into n8n

    Open n8n, import the downloaded JSON, and review each node before activating the workflow.

  3. 3. Configure credentials and variables

    Replace placeholder credentials, API keys, webhook URLs, account IDs, and environment-specific values with your own settings.

  4. 4. Test with sample data

    Run the workflow manually or in a staging workspace, inspect node output, and confirm downstream systems receive the expected data.

  5. 5. Activate and monitor

    Enable the workflow only after testing, then monitor executions, errors, and rate limits during the first production runs.

5. General Notes & Resources

Review imported nodes carefully before activation. This catalog entry is intended to help you inspect the workflow structure, understand required services, and find related templates faster.

Node names, credentials, schedules, webhook paths, and external service limits may need adjustment for your workspace.

Frequently asked questions

What does Auto-create GitHub PRs & JIRA updates from git commit commands (multi-repo) do?

This n8n template from Intuz provides a complete and automated solution for scaling your DevOps practices across multiple repositories. Are you tired of the repetitive dan...

What do I need before importing this workflow?

Review the workflow JSON, configure any required credentials in n8n, and test the automation in a safe workspace before using it in production.

Can I customize this workflow?

Yes. Use the block-by-block analysis and the downloadable JSON to inspect each node, then adjust credentials, prompts, schedules, filters, or destinations for your DevOps use case.