1Notes to myself on all the steps to make for a Ninja release. 2 3### Push new release branch: 41. Run afl-fuzz for a day or so and run ninja_test 52. Consider sending a heads-up to the ninja-build mailing list first 63. Make sure branches 'master' and 'release' are synced up locally 74. Update src/version.cc with new version (with ".git"), then 8 ``` 9 git commit -am 'mark this 1.5.0.git' 10 ``` 115. git checkout release; git merge master 126. Fix version number in src/version.cc (it will likely conflict in the above) 137. Fix version in doc/manual.asciidoc (exists only on release branch) 148. commit, tag, push (don't forget to push --tags) 15 ``` 16 git commit -am v1.5.0; git push origin release 17 git tag v1.5.0; git push --tags 18 # Push the 1.5.0.git change on master too: 19 git checkout master; git push origin master 20 ``` 219. Construct release notes from prior notes 22 23 credits: `git shortlog -s --no-merges REV..` 24 25 26### Release on GitHub: 271. Go to [Tags](https://github.com/ninja-build/ninja/tags) 282. Open the newly created tag and select "Create release from tag" 293. Create the release which will trigger a build which automatically attaches 30 the binaries 31 32### Make announcement on mailing list: 331. copy old mail 34 35### Update website: 361. Make sure your ninja checkout is on the v1.5.0 tag 372. Clone https://github.com/ninja-build/ninja-build.github.io 383. In that repo, `./update-docs.sh` 394. Update index.html with newest version and link to release notes 405. `git commit -m 'run update-docs.sh, 1.5.0 release'` 416. `git push origin master` 42