logchange Documentation
Welcome to logchange! π³
logchange is a powerful tool that revolutionizes changelog management by solving common problems like merge conflicts and forgotten entries. Instead of editing CHANGELOG.md
directly, you create individual YAML files for each change, and logchange generates your final changelog during release.
π Key Benefits
- πͺ Eliminate merge conflicts - No more conflicts when multiple developers update the same changelog file
- π² Automated changelog generation - Generate beautiful changelogs during your release process
- π Perfect release notes - Create reliable release notes automatically from your changelog entries
- π§ Multiple distribution options - Available as CLI, Maven Plugin, and Gradle Plugin
π Documentation
Quick Start
- Getting Started Guide - New to logchange? Start here!
- Installation options (CLI, Maven, Gradle)
- Project initialization
- Creating your first changelog entry
- Basic workflow
Core Documentation
- Usage Guide - Comprehensive usage instructions
- Detailed workflow explanations
- YAML entry format and examples
- Advanced features and configuration
- CI/CD integration patterns
-
Templates and customization
-
FAQ - Frequently asked questions
- Common issues and solutions
- Best practices and recommendations
- Troubleshooting guide
-
Migration strategies
-
Reference Documentation - Complete technical reference
- All CLI commands and options
- Maven Plugin goals and configuration
- Gradle Plugin tasks
- YAML format specification
- Configuration options
- Template system
Project Information
π Quick Start
Choose Your Installation Method
Method | Best For | Installation |
---|---|---|
CLI | Any project type | brew install logchange/tap/logchange |
Maven | Java/Maven projects | Add plugin to pom.xml |
Gradle | Java/Gradle projects | Add plugin to build.gradle |
30-Second Setup
- Initialize your project: ```bash # CLI logchange init
# Maven mvn logchange:init
# Gradle ./gradlew logchangeInit ```
-
Create your first entry:
bash # Interactive mode (recommended) logchange add mvn logchange:add ./gradlew logchangeAdd
-
Generate your changelog:
bash logchange generate mvn logchange:generate ./gradlew logchangeGenerate
π οΈ Installation Options
CLI (Universal)
Works with any project regardless of technology:
# Homebrew (macOS/Linux)
brew install logchange/tap/logchange
# Docker
docker pull logchange/logchange
# Direct download
# Visit GitHub Releases for binary downloads
Maven Plugin
Perfect for Java projects using Maven:
<plugin>
<groupId>dev.logchange</groupId>
<artifactId>logchange-maven-plugin</artifactId>
<version>1.19.5</version>
</plugin>
Gradle Plugin
Ideal for Java projects using Gradle:
plugins {
id 'dev.logchange' version '1.19.5'
}
π Basic Workflow
-
Development Phase: Create YAML entries for your changes ```yaml title: Add user authentication feature authors:
- name: Your Name nick: yourhandle url: https://github.com/yourhandle type: added ```
-
Review Phase: Validate entries before merging
bash logchange lint # or mvn logchange:lint
-
Release Phase: Generate changelog and create release
bash logchange release --versionToRelease 1.2.0 # or mvn logchange:release
π― Key Features
Entry Types
added
- New featureschanged
- Changes to existing functionalitydeprecated
- Features that will be removedremoved
- Features that were removedfixed
- Bug fixessecurity
- Security fixesdependency_update
- Dependency updatesother
- Other changes
Advanced Features
- Multi-version development with dedicated unreleased directories
- Module support for organizing changes by project components
- Configuration tracking for deployment-related changes
- Template customization for personalized changelog formats
- Project aggregation for multi-repository changelog generation
- Archive management for historical changelog data
π Example Projects
See logchange in action: - logchange itself - Hofund project
π€ Contributing
We welcome contributions! Here's how you can help: - π Report bugs - π‘ Request features - π Improve documentation - π» Submit code changes
π Need Help?
- π Check our comprehensive FAQ
- π Browse the Reference Documentation
- π¬ Start a discussion
- π Open an issue
π Standards and References
logchange follows the principles of Keep a Changelog with enhancements based on real-world experience across various project types.
The merge conflict problem with traditional CHANGELOG.md
files has been documented by GitLab, and logchange provides an elegant solution to this widespread issue.
π Don't forget to star the logchange repository if you find it helpful!
Made with π³ by the logchange team