mirror of
https://github.com/apricote/releaser-pleaser.git
synced 2026-02-07 18:27:03 +00:00
docs: add proper readme
This commit is contained in:
parent
65693807bf
commit
48f09d5064
4 changed files with 30 additions and 50 deletions
45
README.md
45
README.md
|
|
@ -1,19 +1,34 @@
|
||||||
# Functionality
|
# releaser-pleaser
|
||||||
|
|
||||||
## Reconciling PRs
|
`releaser-pleaser` is a tool designed to automate versioning and changelog management for your projects. Building on the concepts of [`release-please`](https://github.com/googleapis/release-please), it streamlines the release process through GitHub Actions or GitLab CI.
|
||||||
|
|
||||||
- Checkout Git Repository
|
## Features
|
||||||
- Get Commits since last tag
|
|
||||||
- If there are releasable commits (Conventional Commit & SemVer) continue
|
|
||||||
- Build Changelog from Commits
|
|
||||||
- Figure out next version based on ConvCommits & SemVer
|
|
||||||
- Create new branch
|
|
||||||
- Update local version references & Changelog with new proposed changes
|
|
||||||
- Commit these
|
|
||||||
- Push branch to Forge
|
|
||||||
- Open PR in Forge
|
|
||||||
|
|
||||||
## Reconciling Tags
|
- **Automated Pull Requests**: Opens a PR when releasable changes are detected.
|
||||||
|
- **Smart Versioning**: Suggests new versions based on conventional commits and semantic versioning.
|
||||||
|
- **Version Reference Updates**: Automatically updates committed version references in the PR.
|
||||||
|
- **Changelog Generation**: Creates new changelog entries based on commits.
|
||||||
|
- **Automated Releases**: Upon PR merge, creates tags and GitHub/GitLab Releases with appropriate messages.
|
||||||
|
- **Version Overrides**: Allows manual override of the suggested version.
|
||||||
|
- **Prerelease Support**: Offers options to create alpha, beta, or release candidate versions.
|
||||||
|
|
||||||
- Check if any merged PRs exist that have no associated tags
|
`releaser-pleaser` simplifies release management, allowing maintainers to focus on development while ensuring consistent and well-documented releases.
|
||||||
- Create tag+release with the planned version & changelog
|
|
||||||
|
## Status
|
||||||
|
|
||||||
|
This project is still under active development. You can not reasonably use it right now and not all features advertised above work. Keep your eyes open for any releases.
|
||||||
|
|
||||||
|
## Relation to `release-please`
|
||||||
|
|
||||||
|
After using `release-please` for 1.5 years, I've found it to be the best tool for low-effort releases currently available. While I appreciate many of its features, I identified several additional capabilities that would significantly enhance my workflow. Although it might be possible to incorporate these features into `release-please`, I decided to channel my efforts into creating a new tool that specifically addresses my needs.
|
||||||
|
|
||||||
|
Key differences in `releaser-pleaser` include:
|
||||||
|
|
||||||
|
- Support for multiple forges (both GitHub and GitLab)
|
||||||
|
- Better support for pre-releases
|
||||||
|
|
||||||
|
One notable limitation of `release-please` is its deep integration with the GitHub API, making the addition of support for other platforms (like GitLab) a substantial undertaking. `releaser-pleaser` aims to overcome this limitation by design, offering a more versatile solution for automated release management across different platforms and project requirements.
|
||||||
|
|
||||||
|
## License
|
||||||
|
|
||||||
|
This project is licensed under the GNU General Public License v3.0 (GPL-3.0).
|
||||||
|
|
|
||||||
|
|
@ -1,19 +1,3 @@
|
||||||
/*
|
|
||||||
Copyright © 2024 Julian Tölle <oss@apricote.de>
|
|
||||||
|
|
||||||
This program is free software: you can redistribute it and/or modify
|
|
||||||
it under the terms of the GNU General Public License as published by
|
|
||||||
the Free Software Foundation, either version 3 of the License, or
|
|
||||||
(at your option) any later version.
|
|
||||||
|
|
||||||
This program is distributed in the hope that it will be useful,
|
|
||||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
GNU General Public License for more details.
|
|
||||||
|
|
||||||
You should have received a copy of the GNU General Public License
|
|
||||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
*/
|
|
||||||
package cmd
|
package cmd
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,3 @@
|
||||||
/*
|
|
||||||
Copyright © 2024 Julian Tölle
|
|
||||||
*/
|
|
||||||
package cmd
|
package cmd
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
|
|
||||||
|
|
@ -1,19 +1,3 @@
|
||||||
/*
|
|
||||||
Copyright © 2024 Julian Tölle <oss@apricote.de>
|
|
||||||
|
|
||||||
This program is free software: you can redistribute it and/or modify
|
|
||||||
it under the terms of the GNU General Public License as published by
|
|
||||||
the Free Software Foundation, either version 3 of the License, or
|
|
||||||
(at your option) any later version.
|
|
||||||
|
|
||||||
This program is distributed in the hope that it will be useful,
|
|
||||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
GNU General Public License for more details.
|
|
||||||
|
|
||||||
You should have received a copy of the GNU General Public License
|
|
||||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
*/
|
|
||||||
package main
|
package main
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue