Overview
Version
Synchronize project versions across supported files using configurable versioning strategies.
custy versionCategory
Quick Command
custy version <subcommand>Overview​
The Version command synchronizes version information throughout your project.
Rather than creating Git tags directly, this command updates version-related files so that every configured version reference remains consistent.
Custy supports multiple versioning strategies and automatically adapts the synchronization process based on the detected project type.
Version Command Features
Core capabilities provided by Custy's Version command.
workflowVersion Synchronization
Keep project version references consistent across supported files.
layerMultiple Strategies
Support for SemVer, PEP 440, Commitizen, Date, and Git Count.
compareProject Detection
Automatically detects the target project type.
dependencyAutomatic Conversion
Convert compatible version formats when required.
Available Subcommands
Currently the Version command provides one subcommand:
- update — synchronize project version references.
Additional subcommands may be introduced in future Custy releases.
Supported Versioning Strategies
Custy currently supports:
- Semantic Versioning (SemVer)
- PEP 440
- Commitizen
- Date-based versioning
- Git Count versioning
Each strategy generates version numbers differently while sharing the same version synchronization workflow.
Project File Synchronization
Depending on the detected project type, Custy updates the appropriate project files.
For example:
Python projects
app/__version__.pypyproject.toml.cz.toml
Node.js projects
package.jsonpackage-lock.jsonnpm-shrinkwrap.json
This allows a single version value to remain consistent throughout the project.
Workflow Integration
Version synchronization can be executed independently:
custy version update
Larger public profiles perform their required version stages internally, but
the standalone public form remains custy version update. The internal
apply_version profile name is not accepted by the current public Run argument.
Configuration
Default versioning behavior can be configured through config.toml.
Common settings include:
- versioning strategy
- bump level
- version file location
Command-line arguments always take precedence over configuration values.
What's Next?
Continue with the Requirements page to learn about the project setup and files required before synchronizing versions.