@@ -107,3 +107,67 @@ for (auto const& listEntry : *list) { /*...*/ } // avoid
107
107
for (auto const& aVol : * volList) { /* ...* / } // acceptable
108
108
for (auto const& volume : * volumes) { /* ...* / } // ✓ prefer
109
109
```
110
+
111
+
112
+ # Creating a new Release
113
+
114
+ (This is basically for the release manager, so that we don't
115
+ forget anything.)
116
+
117
+ ## Control the status
118
+
119
+ * Take a look at the
120
+ [Milestone](https://github.com/FairRootGroup/FairRoot/milestones)
121
+ for the release
122
+
123
+ Consider moving still open items to another milestone
124
+
125
+ ## Create a commit
126
+
127
+ On the `v{x.y}_patches` branch with comment `Bump v{x.y.z}`:
128
+
129
+ * Double check that the version number on the `project`
130
+ line in [CMakeLists.txt](CMakeLists.txt) is correct
131
+
132
+ * Apply some final editorial changes to the
133
+ [CHANGELOG](CHANGELOG.md) for the upcoming release
134
+ * Remove the `(UNRELEASED)` tag on the header
135
+ * Add the correct date
136
+ * Go over the list and re-order things/etc (classical
137
+ editorial changes)
138
+
139
+ * Apply editorial changes to [README](README.md)
140
+
141
+ * (Soon)
142
+ * Check that `codemeta.json` and friends have been
143
+ updated.
144
+ * Get a zenodo entry ready
145
+
146
+ ## Push the patch to the repository:
147
+
148
+ * ```
149
+ git push origin v{x.y}_patches
150
+ ```
151
+
152
+ * Check the CI, so that all checks pass for the branch
153
+
154
+ ## Create, control and push the new tag to the repository:
155
+
156
+ ```
157
+ git tag v{x.y.z} -a -s
158
+ git show v{x.y.z}
159
+ git push origin v{x.y.z}
160
+ ```
161
+
162
+ ## Create a new realese on GitHub.
163
+
164
+ ## In certain cases the tag should be merged onto master:
165
+
166
+ ```
167
+ git checkout master
168
+ git merge origin/v{x.y}_patches
169
+ git push mainrepo origin
170
+ ```
171
+
172
+ The message, when prompted, should be ` Merge v{x.y.z} ` .
173
+ The merge and push should not be forced.
0 commit comments