Skip to content
This repository was archived by the owner on Dec 5, 2024. It is now read-only.

Commit 87d9811

Browse files
Merge branch 'master' into fixes/repository-refactor
2 parents 1a65195 + bd9a081 commit 87d9811

File tree

2 files changed

+70
-1
lines changed

2 files changed

+70
-1
lines changed

docs/process/release-process.md

Lines changed: 68 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,68 @@
1+
# Release process
2+
3+
## Release information
4+
5+
### Tag name format
6+
7+
***Alpha releases***: `v[major].[minor]-alpha`
8+
9+
***Beta releases***: `v[major].[minor]-beta`
10+
11+
***Releases***: `v[major].[minor]`
12+
13+
## The process
14+
15+
#### TL;DR
16+
17+
1. Dev branches to a release branch every week, create draft release with release notes
18+
2. QA tests release branch for up to a week
19+
3. Dev continues work on master
20+
4. Dev fixes shipblockers on release branch and updates build on draft release page, and makes sure fixes are also sent to master
21+
5. QA publishes release by tagging the release branch and hitting "Publish"
22+
6. Goto 1
23+
24+
#### The long explanation
25+
26+
Every week:
27+
28+
1. Create a release branch from master with the name `release/[Major].[Minor]`, where `[Major].[Minor]` are the current major and minor parts of the version set on master.
29+
1. Bump the version on master
30+
1. Create a draft release with the release notes, following the format below
31+
1. Upload a build created from the release branch
32+
1. QA tests the release and logs any issues found in it. Issues are fixed on the next release unless they are related to the issues that are reported as fixed in the current release, and they are shipblockers.
33+
1. If the release requires fixes:
34+
1. If the fix is reverting a PR, that doesn't have to be done on master, only on the release branch. Otherwise:
35+
1. Create a branch from the release branch fork point (the commit that the release branch is based on)
36+
1. Push the fix to this branch and create a PR targetting the release branch
37+
1. Upload a new build from the release branch
38+
1. Create another branch from master, merge the fix branch into it and create a PR targetting master
39+
1. QA approves release by:
40+
1. Filling out the tag name, in the format shown above
41+
1. Selecting the release branch corresponding to the build
42+
1. Clicking `Publish release`
43+
44+
45+
## Template for release notes
46+
47+
The https://github.com/github-for-unity/unity-release-notes node project generates draft release notes by outputting all issues labeled `Feature`, `Enhancement` and `Bug` closed since the last release in the correct format for release notes, and also outputs all PRs closed since the last release, in case some issues might not have been correctly labeled and/or created.
48+
49+
The markdown format for release notes is below. This is what the project above generates (more or less).
50+
51+
```
52+
# Release notes
53+
54+
[any special notes and/or funny/relevant image for the release here, if needed]
55+
56+
## Features
57+
58+
- #XXX - Title of issue (adjust for user consumption if needed)
59+
60+
## Enhancements
61+
62+
- #XXX - Title of issue (adjust for user consumption if needed)
63+
64+
## Fixes
65+
66+
- #XXX - Title of issue (adjust for user consumption if needed)
67+
68+
```

docs/readme.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,8 +24,9 @@ Details about how the team is organizing and shipping GitHub for Unity:
2424

2525
- **[Issue Triage](process/issue-triage.md)** - how we address issues reported
2626
by users
27-
- **[Review Process](process/reviews.md)** - how we review contributions
27+
- **[Review](process/reviews.md)** - how we review contributions
2828
- **[Roadmap](process/roadmap.md)** - how we plan for the future
29+
- **[Release](process/release-process.md)** - how we review contributions
2930

3031
## Technical
3132

0 commit comments

Comments
 (0)