update-to-tag
The update-to-tag
command applies sequential changes to your database from the newest changeset to the changeset with the tag you specified and applied earlier.
Uses
The update-to-tag
command is mainly used to apply changes sequentially, starting with the changesets from the top of the changelog file until the specified tag is reached. Even though there are other undeployed changes in the changelog, the command deploys only the changesets associated with a specific tag.
The update-to-tag
command will deploy changes only when you have tagDatabase Change Type in your changelog file. You cannot use the update-to-tag
command with the reference to a tag created in the DATABASECHANGELOG table using the tag
command.
The following image shows that if you run the update-to-tag
command with the tag version1
, which should be specified in the changelog file as a tagDatabase
changeset, Liquibase will deploy createTable A
, createTable B
, and version1
without deploying createTable C
.
Note: Currently, the tagDatabase
Change Type is not supported in the formatted SQL changelog. The supported formats are XML, YAML, and JSON. If you have a root XML changelog that includes formatted SQL files, you can apply a changeset with a tag between the formatted SQL files. For more information, see Best Practices.

<?xml version="1.0" encoding="UTF-8"?>
<databaseChangeLog
xmlns="http://www.liquibase.org/xml/ns/dbchangelog"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:ext="http://www.liquibase.org/xml/ns/dbchangelog-ext"
xmlns:pro="http://www.liquibase.org/xml/ns/pro"
xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog
http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-latest.xsd
http://www.liquibase.org/xml/ns/dbchangelog-ext http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-ext.xsd
http://www.liquibase.org/xml/ns/pro http://www.liquibase.org/xml/ns/pro/liquibase-pro-latest.xsd">
<changeSet author="liquibase-docs" id="createTable-example a">
<createTable catalogName="sample"
remarks="A String"
schemaName="public"
tableName="person"
tablespace="A String">
<column name="address" type="varchar(255)"/>
</createTable>
</changeSet>
<changeSet author="liquibase-docs" id="createView-example">
<createView catalogName="sample"
encoding="UTF-8"
fullDefinition="true"
path="A String"
relativeToChangelogFile="true"
remarks="A String"
replaceIfExists="false"
schemaName="public"
viewName="v_person">select id, name from person where id > 10
</createView>
</changeSet>
<changeSet author="liquibase-docs" id="tagDatabase-example">
<tagDatabase tag="version1"/>
</changeSet>
<changeSet author="liquibase-docs" id="createTable-example b">
<createTable catalogName="sample"
remarks="A String"
schemaName="public"
tableName="person"
tablespace="A String"
<column name="address" type="varchar(255)"/>
</createTable>
</changeSet>
Additionally, it is best practice to run the update-to-tag-sql
helper command to inspect the update-to-tag
SQL, so you can correct any issues that may arise before running the command.
Running the update-to-tag
command
To run the update-to-tag
command, specify the driver, classpath, and URL in the Liquibase properties file. You can also specify these properties in your command line.
Then run the update-to-tag
command:
liquibase --changelog-file=communityOnly.xml update-to-tag version1
Note: Enter the name of the changelog and the tag that you want to use in place of communityOnly.xml
and version1
.
update-to-tag
global attributes
Tip: All commands and parameters use the --kebab-case
format in the CLI environment. This is the format Liquibase recommends for best results. If your preference is camelCase, it will still work in the CLI.
Attribute | Definition | Requirement |
---|---|---|
|
The root changelog |
Required |
|
The JDBC database connection URL |
Required |
|
The database username |
Required |
|
The database password |
Required |
*Liquibase will check the changelog and any nested changelogs for definitions of the changesets to update.
Note: The username
and password
attributes are not required for connections and systems which use alternate means of authentication.
update-to-tag
command attributes
Attribute | Definition | Requirement |
---|---|---|
|
Tags allow the user to identify which changesets in the changelog to evaluate. |
Required |

Liquibase Version: 4.9.1
Liquibase Community 4.9.1 by Liquibase
Running Changeset: example-changelog.sql::1::your.name
Running Changeset: example-changelog.sql::2::your.name
Running Changeset: example-changelog.sql::3::other.dev
Liquibase command 'update-to-tag' was executed successfully.