# git tags

Published articles for git tags.

This is one page of public article previews, not the complete archive. Follow Next page to continue. Summaries are not the original full articles.

## Trigger Deployments on Git Tags

DevFeed: [Trigger Deployments on Git Tags](<https://devfeed.tech/articles/trigger-deployments-on-git-tags-19033.md>)

Original publisher: [Read original article](<https://www.pulumi.com/blog/trigger-deployments-on-git-tags/>)

Author: Michael Fallihee

Published: 2026-06-05T00:00:00Z

Content type: release

Language: en

Sources: [Pulumi](<https://devfeed.tech/sources/pulumi.md>)

Topics: [Deployment](<https://devfeed.tech/topics/deployment.md>), [Git](<https://devfeed.tech/topics/git.md>), [releases](<https://devfeed.tech/topics/releases.md>), [ci](<https://devfeed.tech/topics/ci.md>), [REST API](<https://devfeed.tech/topics/rest-api.md>), [GitHub](<https://devfeed.tech/topics/github.md>)

Tags: [announcements](<https://devfeed.tech/tags/announcements.md>), [azure](<https://devfeed.tech/tags/azure.md>), [bitbucket](<https://devfeed.tech/tags/bitbucket.md>), [deployment](<https://devfeed.tech/tags/deployment.md>), [devops](<https://devfeed.tech/tags/devops.md>), [features](<https://devfeed.tech/tags/features.md>), [git](<https://devfeed.tech/tags/git.md>), [git-tags](<https://devfeed.tech/tags/git-tags.md>), [github](<https://devfeed.tech/tags/github.md>), [gitlab](<https://devfeed.tech/tags/gitlab.md>), [product](<https://devfeed.tech/tags/product.md>), [pulumi-cloud](<https://devfeed.tech/tags/pulumi-cloud.md>), [rest](<https://devfeed.tech/tags/rest.md>), [rest-api](<https://devfeed.tech/tags/rest-api.md>), [version-control](<https://devfeed.tech/tags/version-control.md>)

### AI overview

Pulumi Deployments can now trigger stack deployments when matching Git tags are pushed. Teams can enable tag-based triggers, configure glob filters, and use the tag name in deployment commands or Pulumi programs. The feature works with GitHub, GitLab, Bitbucket, Azure DevOps, and Custom VCS integrations.

### Source excerpt

A git tag is how many teams mark a release as ready. Pulumi Deployments can now act on that signal directly: configure a tag-based trigger, push a version tag like v1.2.0, and Pulumi automatically runs pulumi up for your stack. No extra pipeline glue, no manual click -- your release tag is the deployment. Why tags? Push to Deploy has long let you preview changes on a pull request and update a stack when commits merge to a branch. That branch-based model is a great fit for continuous delivery to shared development and QA environments, where every merge should flow straight through. But promotion to production is often deliberate, not continuous. You merge throughout the day, then decide -- separately -- that a particular commit is the release. The conventional way to record that decision is a git tag: v1.2.0, 2026.06.0, release-2026-06-04. Tagging is already part of most teams' release rituals. Tag-based triggers connect that ritual to your infrastructure. Instead of wiring up a separate CI job to call the Pulumi Deployments REST API on a tag event, you configure the trigger once in your stack's deployment settings and let Pulumi handle the rest. How it works Tag triggers are controlled by two settings on your stack's deployment configuration: Run updates for pushed tags -- a toggle that enables running pulumi up when a matching tag is pushed. Tag filters -- a list of glob patterns that decide which tag names qualify. Tag filters use the same model as the path filters you may already know, except the patterns match against the tag name rather than changed file paths. A few examples: v* -- deploy on any tag beginning with v, such as v1.0.0 and v2.3.1. v* plus !*-rc* -- deploy on release tags but skip release candidates like v1.2.0-rc1. 2026.* -- deploy on calendar-versioned releases such as 2026.06.0. Filters prefixed with ! are exclusions, and an exclusion always wins over an include. With no filters configured and the toggle on, every tag push deploys. Deleting a tag never

## svu v3 automates semantic versioning from Git tags and conventional commits

DevFeed: [svu v3 automates semantic versioning from Git tags and conventional commits](<https://devfeed.tech/articles/svu-v3-37856.md>)

Original publisher: [Read original article](<https://carlosbecker.com/posts/svu3/>)

Author: Carlos Alexandro Becker

Published: 2025-02-20T00:00:00Z

Content type: article

Language: en

Sources: [Carlos Becker](<https://devfeed.tech/sources/carlos-becker.md>)

Topics: [releases](<https://devfeed.tech/topics/releases.md>), [Code](<https://devfeed.tech/topics/code.md>), [configuration](<https://devfeed.tech/topics/configuration.md>), [dotfiles](<https://devfeed.tech/topics/dotfiles.md>)

Tags: [configuration](<https://devfeed.tech/tags/configuration.md>), [file](<https://devfeed.tech/tags/file.md>), [git](<https://devfeed.tech/tags/git.md>), [git-tags](<https://devfeed.tech/tags/git-tags.md>), [semantic](<https://devfeed.tech/tags/semantic.md>), [v3](<https://devfeed.tech/tags/v3.md>), [version](<https://devfeed.tech/tags/version.md>)

### AI overview

The article introduces svu, a tool and library that determines the next semantic version from Git tags and conventional commits. It describes svu v3, including an internal refactor, dependency updates, renamed or removed flags, and the ability to create a configuration file in a repository.

### Source excerpt

Back in 2017, I got tired of manually checking and creating git tags.

## Chainguard's image tagging philosophy: enabling high velocity updates (pt. 2 of 3)

DevFeed: [Chainguard's image tagging philosophy: enabling high velocity updates (pt. 2 of 3)](<https://devfeed.tech/articles/chainguard-s-image-tagging-philosophy-enabling-high-velocity-updates-pt-2-of-3-12989.md>)

Original publisher: [Read original article](<https://www.chainguard.dev/unchained/chainguards-image-tagging-philosophy-enabling-high-velocity-updates-pt-2-of-3>)

Published: 2023-11-15T00:00:00Z

Content type: article

Language: en

Sources: [Chainguard: Unchained](<https://devfeed.tech/sources/chainguard-unchained.md>)

Topics: [container images](<https://devfeed.tech/topics/container-images.md>), [chainguard](<https://devfeed.tech/topics/chainguard.md>), [container](<https://devfeed.tech/topics/container.md>), [Git](<https://devfeed.tech/topics/git.md>)

Tags: [chainguard](<https://devfeed.tech/tags/chainguard.md>), [container](<https://devfeed.tech/tags/container.md>), [container-images](<https://devfeed.tech/tags/container-images.md>), [content-addressed-tagging](<https://devfeed.tech/tags/content-addressed-tagging.md>), [digests](<https://devfeed.tech/tags/digests.md>), [git](<https://devfeed.tech/tags/git.md>), [git-tags](<https://devfeed.tech/tags/git-tags.md>), [image-tagging](<https://devfeed.tech/tags/image-tagging.md>), [immutable-tags](<https://devfeed.tech/tags/immutable-tags.md>), [sha-256](<https://devfeed.tech/tags/sha-256.md>)

### AI overview

Part 2 of a three-part series explains Chainguard's content-addressed image tagging philosophy. It argues that image digests provide a concise canonical identifier because they incorporate the contents and metadata of the entire container image, and compares them with Git commit SHAs.

### Source excerpt

Dive deeper into Chainguard's approach to image tagging, a cornerstone for swift and efficient container updates in Part 2 of this series.

## Using Goss to validate Packer builds

DevFeed: [Using Goss to validate Packer builds](<https://devfeed.tech/articles/using-goss-to-validate-packer-builds-37820.md>)

Original publisher: [Read original article](<https://carlosbecker.com/posts/packer-goss/>)

Author: Carlos Alexandro Becker

Published: 2018-12-06T00:00:00Z

Content type: tutorial

Language: en

Sources: [Carlos Becker](<https://devfeed.tech/sources/carlos-becker.md>)

Topics: [test](<https://devfeed.tech/topics/test.md>), [Tool](<https://devfeed.tech/topics/tool.md>), [builds](<https://devfeed.tech/topics/builds.md>), [Server](<https://devfeed.tech/topics/server.md>), [Cloud](<https://devfeed.tech/topics/cloud.md>)

Tags: [build](<https://devfeed.tech/tags/build.md>), [cloud](<https://devfeed.tech/tags/cloud.md>), [download](<https://devfeed.tech/tags/download.md>), [example](<https://devfeed.tech/tags/example.md>), [file](<https://devfeed.tech/tags/file.md>), [fork](<https://devfeed.tech/tags/fork.md>), [git-tags](<https://devfeed.tech/tags/git-tags.md>), [permissions](<https://devfeed.tech/tags/permissions.md>), [plugin](<https://devfeed.tech/tags/plugin.md>), [releases](<https://devfeed.tech/tags/releases.md>), [run](<https://devfeed.tech/tags/run.md>), [simple](<https://devfeed.tech/tags/simple.md>), [test](<https://devfeed.tech/tags/test.md>), [tool](<https://devfeed.tech/tags/tool.md>), [useful](<https://devfeed.tech/tags/useful.md>), [using](<https://devfeed.tech/tags/using.md>)

### AI overview

A practical tip for validating Packer-built images with Goss. The article describes using a Packer plugin and a Goss test suite to check an image before pushing it to Google Cloud.

### Source excerpt

Ever wanted to validate your Packer image with Goss? Well, you can!

## Add git version tag after publishing to npm

DevFeed: [Add git version tag after publishing to npm](<https://devfeed.tech/articles/add-git-version-tag-after-publishing-to-npm-37234.md>)

Original publisher: [Read original article](<https://muffinman.io/blog/add-git-version-tag-after-publishing-to-npm/>)

Author: Stanko

Published: 2018-07-12T00:00:00Z

Content type: tutorial

Language: en

Sources: [Stanko Tadić](<https://devfeed.tech/sources/stanko-tadic.md>)

Topics: [Git](<https://devfeed.tech/topics/git.md>), [npm](<https://devfeed.tech/topics/npm.md>), [git tags](<https://devfeed.tech/topics/git-tags.md>), [version](<https://devfeed.tech/topics/version.md>), [Bash](<https://devfeed.tech/topics/bash.md>), [Script](<https://devfeed.tech/topics/script.md>), [GitHub](<https://devfeed.tech/topics/github.md>), [Code](<https://devfeed.tech/topics/code.md>)

Tags: [bash](<https://devfeed.tech/tags/bash.md>), [code](<https://devfeed.tech/tags/code.md>), [git](<https://devfeed.tech/tags/git.md>), [git-tags](<https://devfeed.tech/tags/git-tags.md>), [github](<https://devfeed.tech/tags/github.md>), [npm](<https://devfeed.tech/tags/npm.md>), [package-json](<https://devfeed.tech/tags/package-json.md>), [packages](<https://devfeed.tech/tags/packages.md>), [releases](<https://devfeed.tech/tags/releases.md>), [script](<https://devfeed.tech/tags/script.md>), [version](<https://devfeed.tech/tags/version.md>)

### AI overview

A tutorial shows how to use an npm postpublish script to extract the package version from package.json, create a corresponding Git tag, and push the tag to a remote repository. It explains the Bash commands used for version extraction and automation.

### Source excerpt

TL;DR # If you just want to add git version tag after npm publish add this to your package.json: "postpublish" : "PACKAGE_VERSION=$(cat package.json | grep \\\"version\\\" | head -1 | awk -F: '{ print $2 }' | sed 's/[\",]//g' | tr -d '[[:space:]]') && git tag v$PACKAGE_VERSION && git push --tags", I advise you to read rest of the post to see what this code does. Because blindly coping code from the internet is probably not the smartest thing to do. Detailed explanation # I maintain couple of npm packages, and I wanted to add git tags for every version I publish to npm. It makes things easier to find, and GitHub lists all of them on "Releases" page. First thing to solve was to extract current version from package.json. I found a snippet on the internet and modified it slightly. This piece of bash code prints out versione.g. 1.0.0 or 0.1.15 from package.json. It looks complicated, but don't worry, I explained everything bellow. PACKAGE_VERSION=$(cat package.json \ | grep \"version\" \ | head -1 \ | awk -F: '{ print $2 }' \ | sed 's/[",]//g' \ | tr -d '[[:space:]]') echo $PACKAGE_VERSION I wasn't sure what certain lines do, so I did some researchAgain, I don't like blindly pasting code snippets I find on the internet. You should be careful with that. and here is code explained. # prints whole package json cat package.json # filters lines with "version" in them (can be multiple lines) grep \"version\" # pulls only the first line (leaves us with "version": "2.0.3",) head -1 # splits string by ":" and prints the second part (leaves us with "2.0.3",) awk -F: '{ print $2 }' # removes " and , (leaves us with 2.0.3) sed 's/[",]//g' # removes any leftover spaces and new lines tr -d '[[:space:]]' Add it to package.json # To automate this and add tag after every publish to npm, we'll use postpublish script. It is supported by npm, and it will be executed after every npm publish. Only thing left to do is to add tag and push it to origin. I added letter v in front of version numbe

## Automatic Versioning with Git and Gradle

DevFeed: [Automatic Versioning with Git and Gradle](<https://devfeed.tech/articles/automatic-versioning-with-git-and-gradle-30557.md>)

Original publisher: [Read original article](<https://ryanharter.com/blog/2013/07/automatic-versioning-with-git-and-gradle/>)

Published: 2013-07-30T07:00:00Z

Content type: tutorial

Language: en

Sources: [Blogs on Ryan Harter](<https://devfeed.tech/sources/blogs-on-ryan-harter.md>)

Topics: [Git](<https://devfeed.tech/topics/git.md>), [Gradle](<https://devfeed.tech/topics/gradle.md>), [version-control](<https://devfeed.tech/topics/version-control.md>), [releases](<https://devfeed.tech/topics/releases.md>)

Tags: [build](<https://devfeed.tech/tags/build.md>), [git](<https://devfeed.tech/tags/git.md>), [git-tags](<https://devfeed.tech/tags/git-tags.md>), [gradle](<https://devfeed.tech/tags/gradle.md>), [version-control](<https://devfeed.tech/tags/version-control.md>), [versioning](<https://devfeed.tech/tags/versioning.md>)

### AI overview

This tutorial explains how to use Git tags and a Gradle build script to derive Android marketing and build version numbers. Intermediate builds can include the latest release version, the number of commits since that release, and the commit SHA1 hash.

### Source excerpt

One of the challenges of programming projects is versioning. I've always tried to find a simple way to bump version and build number in a meaningful way that uniquely identifies a build. Back in the Subversion days this was easy, since Subversion is a centralized version control system that assigns a unique, incrementing revision number to each commit. Free build numbers! Then all you have to do is assign a marketing version number (something like 1.0) for each release.