Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up

:octocat: Github action to retrieve branch or tag names with support for all events.

License

NotificationsYou must be signed in to change notification settings

tj-actions/branch-names

Repository files navigation

UbuntuMac OSWindowsPublic workflows that use this action.

Codacy BadgeCIUpdate release version.

All Contributors

Get a branch or tag name without the/ref/* prefix.

Table of Contents

Features

  • Retrieve the current branch name without any prefix. (e.g.'refs/heads/main' ->'main')
  • Retrieve the current tag with an option to strip the prefix (e.g.v0.0.1 ->v ->0.0.1)
  • Detect actions triggered by non default branches
  • Detect actions triggered by the default branch
  • Supports all validgit branch names

Usage

...steps:      -name:Get branch names.id:branch-namesuses:tj-actions/branch-names@v8              -name:Running on the default branch.if:steps.branch-names.outputs.is_default == 'true'run:|          echo "Running on default: ${{ steps.branch-names.outputs.current_branch }}"# Outputs: "Running on default: main"            -name:Running on a pull request branch.if:steps.branch-names.outputs.is_default == 'false'run:|          echo "Running on pr: ${{ steps.branch-names.outputs.current_branch }}"# Outputs: "Running on pr: feature/test"            -name:Running on a pull request branch.if:steps.branch-names.outputs.is_default == 'false'run:|          echo "Base branch: ${{ steps.branch-names.outputs.base_ref_branch }}"# Outputs: "Base branch: main"              -name:Running on any event.run:|          echo "Default branch: ${{ steps.branch-names.outputs.default_branch }}"# Outputs: "Default branch: main"

If you feel generous and want to show some extra appreciation:

Support this project with a ⭐

Buy me a coffee

Inputs

-uses:tj-actions/branch-names@v8id:branch-nameswith:# The prefix that should be# stripped from the tag e.g# `v` -> with a tag# `v0.0.1` -> returns `0.0.1`# Type: stringstrip_tag_prefix:''

Outputs

OUTPUTTYPEDESCRIPTION
base_ref_branchstringThe target branch of a
pull request or tag e.g
main
current_branchstringThe current branch name regardless
of event_type e.gmain,feature/test
default_branchstringThe default branch name e.g
main ORmaster
head_ref_branchstringThe source branch of a
pull request e.gfeature/test
is_defaultstringReturns"true" if the current
branch is the default else
"false".
is_tagstringReturns"true" if the current
branch is a tag else
"false".
ref_branchstringThe branch that triggered the
workflow run. e.g1/merge,main
tagstringThe tag that triggered the
workflow run. e.gv0.0.1,0.0.1

Events

push*

on:push:branches:      -main...steps:      -name:Get branch namesid:branch-namesuses:tj-actions/branch-names@v8      -name:Current branch namesrun:|          echo "${{ steps.branch-names.outputs.current_branch }}"# Outputs: "main" the branch that triggered the push event.      -name:Running on the default branch.if:steps.branch-names.outputs.is_default == 'true'run:|          echo "Running on default: ${{ steps.branch-names.outputs.current_branch }}"# Outputs: "Running on default: main".            -name:Running on the default branch (i.e non tag based branch).if:steps.branch-names.outputs.is_tag == 'false' && steps.branch-names.outputs.is_default == 'true'run:|          echo "Running on branch: ${{ steps.branch-names.outputs.current_branch }}"# Outputs: "Running on branch: main".            -name:Get Ref brach namerun:|          echo "${{ steps.branch-names.outputs.ref_branch }}"#  Outputs: "main"            -name:Default branch namerun:|          echo "${{ steps.branch-names.outputs.default_branch }}"# Outputs: "main" the default branch.

pull_request*

on:pull_request:branches:      -main...steps:      -name:Get branch namesid:branch-namesuses:tj-actions/branch-names@v8            -name:Current branch namesrun:|          echo "${{ steps.branch-names.outputs.current_branch }}"# Outputs: "feature/test" current PR branch.      -name:Running on a non tag based branch and a PR branch.if:steps.branch-names.outputs.is_default == 'false'run:|          echo "Running on branch: ${{ steps.branch-names.outputs.current_branch }}"# Outputs: "Running on branch: feature/test".            -name:Running on a pull request (i.e non tag based branch).if:steps.branch-names.outputs.is_tag == 'false' && steps.branch-names.outputs.is_default == 'false'run:|          echo "Running on branch: ${{ steps.branch-names.outputs.current_branch }}"# Outputs: "Running on branch: feature/test".            -name:Get Ref branch namerun:|          echo "${{ steps.branch-names.outputs.ref_branch }}"#  Outputs: "1/merge"      -name:Get Head Ref branch names (i.e The current pull request branch)run:|          echo "${{ steps.branch-names.outputs.head_ref_branch }}"# Outputs: "feature/test" current PR branch.      -name:Get Base Ref branch names (i.e The target of a pull request.)run:|          echo "${{ steps.branch-names.outputs.base_ref_branch }}"# Outputs: "main".            -name:Default branch namesrun:|          echo "${{ steps.branch-names.outputs.default_branch }}"# Outputs: "main" the default branch.

tag*

on:push:tags:      -'*'...steps:      -name:Get branch namesid:branch-namesuses:tj-actions/branch-names@v8with:strip_tag_prefix: v# Optionally strip the leading `v` from the tag.           -name:Running on a tag branch.if:steps.branch-names.outputs.is_tag == 'true'run:|          echo "Running on: ${{ steps.branch-names.outputs.tag }}"# Outputs: "Running on: 0.0.1".              -name:Get the current tagif:steps.branch-names.outputs.is_tag == 'true'# Replaces: startsWith(github.ref, 'refs/tags/')run:|          echo "${{ steps.branch-names.outputs.tag }}"# Outputs: "0.0.1"

Other supported events

See.github/workflows/test.yml for more examples.

Possible usage withactions/checkout

on:pull_request:branches:      -developjobs:test:runs-on:ubuntu-lateststeps:      -name:Get branch names.id:branch-namesuses:tj-actions/branch-names@v8      -uses:actions/checkout@v4with:ref:${{ steps.branch-names.outputs.head_ref_branch }}

Credits

This package was created withCookiecutter.

Report Bugs

Report bugs athttps://github.com/tj-actions/branch-names/issues.

If you are reporting a bug, please include:

  • Your operating system name and version.
  • Any details about your workflow that might be helpful in troubleshooting.
  • Detailed steps to reproduce the bug.

Contributors ✨

Thanks goes to these wonderful people (emoji key):

Alejandro Loarca
Alejandro Loarca

💻
Ian Woodard
Ian Woodard

📖
Raphael Boidol
Raphael Boidol

📖

This project follows theall-contributors specification. Contributions of any kind welcome!


[8]ページ先頭

©2009-2025 Movatter.jp