Git Board Flow is a powerful GitHub Action designed to streamline issue, branch, and project management while adhering to the Git-Flow methodology. This action simplifies your workflow by automating the creation and management of branches, linking them to issues, and ensuring smooth integration with GitHub Projects.
- Detects when an issue is created or updated.
- Analyzes issue labels (or configuration defined in your workflow) to determine the necessary branches:
- Feature, Bugfix, Hotfix, Release, etc., following Git-Flow standards.
- Automatically creates branches and links them to the issue.
- Adds a summary comment to the issue describing the actions taken.
- Detects commits in branches linked to an issue.
- Posts updates in the issue with a summary of the commits, including:
- Commit messages.
- Branch names.
- Links to the commit history.
- Detects new PRs from branches linked to an issue.
- Automatically links the PR to the corresponding issue.
- Posts a comment in the PR summarizing its linkage and actions.
- Seamlessly links issues and PRs to the specified GitHub Projects.
- Ensures that all relevant entities are included in the right projects automatically.
- Runs on Ubuntu and completes tasks in under 20 seconds, making it cost-effective and efficient for any repository.
- Team Collaboration: Keep issues, branches, and PRs connected effortlessly for better visibility.
- Automated Workflows: Reduce manual overhead with automated branch management and notifications.
- Git-Flow Compliance: Maintain Git-Flow structure without additional effort.
name: Git Board Flow - Issue
on:
issues:
types: [opened, edited, labeled, unlabeled]
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true
jobs:
git-board-flow-issues:
name: Git Board Flow - Issues
runs-on: ubuntu-latest
steps:
- name: Checkout Repository
uses: actions/checkout@v4
- name: Git Board Flow - Issues
uses: landamessenger/git-board-flow@master
with:
action: issue
project-urls: https://github.com/orgs/landamessenger/projects/2, https://github.com/orgs/landamessenger/projects/3
commit-prefix-builder: |
branchName.replace("/", "-");
github-token: ${{ secrets.GITHUB_TOKEN }}
github-token-personal: ${{ secrets.REPO_PAT }}
name: Git Board Flow - Pull Requests
on:
pull_request:
types: [opened, edited, labeled, unlabeled]
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true
jobs:
git-board-flow-pull-requests:
name: Git Board Flow - Pull Requests
runs-on: ubuntu-latest
steps:
- name: Checkout Repository
uses: actions/checkout@v4
- name: Git Board Flow - Pull Requests
uses: landamessenger/git-board-flow@master
with:
action: pull-request
project-urls: https://github.com/orgs/landamessenger/projects/2, https://github.com/orgs/landamessenger/projects/3
commit-prefix-builder: |
branchName.replace("/", "-");
github-token: ${{ secrets.GITHUB_TOKEN }}
github-token-personal: ${{ secrets.REPO_PAT }}
name: Git Board Flow - Commits
on:
push:
branches:
- '**'
jobs:
git-board-flow-commits:
name: Git Board Flow - Commits
runs-on: ubuntu-latest
steps:
- name: Checkout Repository
uses: actions/checkout@v4
- name: Git Board Flow - Commits
uses: landamessenger/git-board-flow@master
with:
action: commit
github-token: ${{ secrets.GITHUB_TOKEN }}
github-token-personal: ${{ secrets.REPO_PAT }}
commit-prefix-builder: |
branchName.replace("/", "-");
- Warning received if the prefix of the commit does not match the one defined from
commit-prefix-builder
.
- Consistent Git-Flow Management: Adheres strictly to Git-Flow methodology for clear branching strategies.
- Project Visibility: Ensures all relevant branches, issues, and PRs are properly tracked and communicated.
- Time-Saving: Automates repetitive tasks, freeing up time for development and review.
- Affordable: Fast execution keeps costs low, even in large repositories.
Get started with Git Board Flow and simplify your GitHub project workflows today! 🚀