X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=doc%2Fmd%2FRelease-Shaarli.md;fp=doc%2FRelease-Shaarli.md;h=cce5e20942d967559451aba607b2809a8751d742;hb=53ed6d7d1e678d7486337ce67a2f17b30bac21ac;hp=ced588534dedeea51d9d8d81fdd400febb9aaa56;hpb=d5d22a6d07917865c44148ad76f43c65a929a890;p=github%2Fshaarli%2FShaarli.git diff --git a/doc/Release-Shaarli.md b/doc/md/Release-Shaarli.md similarity index 74% rename from doc/Release-Shaarli.md rename to doc/md/Release-Shaarli.md index ced58853..cce5e209 100644 --- a/doc/Release-Shaarli.md +++ b/doc/md/Release-Shaarli.md @@ -1,5 +1,4 @@ -#Release Shaarli -See [Git - Maintaining a project - Tagging your [](.html) +See [Git - Maintaining a project - Tagging your releases](http://git-scm.com/book/en/v2/Distributed-Git-Maintaining-a-Project#Tagging-Your-Releases). ## Prerequisites @@ -13,13 +12,13 @@ This guide assumes that you have: - maintainer permissions on the main Shaarli repository, to: - push the signed tag - create a new release -- [Composer](https://getcomposer.org/) and [Pandoc](http://pandoc.org/) need to be installed[](.html) +- [Composer](https://getcomposer.org/) and [Pandoc](http://pandoc.org/) need to be installed ## GitHub release draft and `CHANGELOG.md` See http://keepachangelog.com/en/0.3.0/ for changelog formatting. ### GitHub release draft -GitHub allows drafting the release note for the upcoming release, from the [Releases](https://github.com/shaarli/Shaarli/releases) page. This way, the release note can be drafted while contributions are merged to `master`.[](.html) +GitHub allows drafting the release note for the upcoming release, from the [Releases](https://github.com/shaarli/Shaarli/releases) page. This way, the release note can be drafted while contributions are merged to `master`. ### `CHANGELOG.md` This file should contain the same information as the release note draft for the upcoming version. @@ -34,17 +33,17 @@ $ cd /path/to/shaarli $ nano CHANGELOG.md -[...][](.html) +[...] ## vA.B.C - UNRELEASED TBA -## [vX.Y.Z](https://github.com/shaarli/Shaarli/releases/tag/vX.Y.Z) - YYYY-MM-DD[](.html) -[...][](.html) +## [vX.Y.Z](https://github.com/shaarli/Shaarli/releases/tag/vX.Y.Z) - YYYY-MM-DD +[...] ``` -## Increment the version code, create and push a signed tag -### Bump Shaarli's version +## Increment the version code, updated docs, create and push a signed tag +### Generate documentation ```bash $ cd /path/to/shaarli @@ -52,15 +51,12 @@ $ cd /path/to/shaarli $ git fetch upstream $ git checkout upstream/master -b v0.5.0 -# bump the version number -$ vim index.php shaarli_version.php - # rebuild the documentation from the wiki $ make htmldoc # commit the changes -$ git add index.php shaarli_version.php doc -$ git commit -s -m "Bump version to v0.5.0" +$ git add doc +$ git commit -s -m "Generate documentation for v0.5.0" # push the commit on your GitHub fork $ git push origin v0.5.0 @@ -69,12 +65,32 @@ $ git push origin v0.5.0 ### Create and merge a Pull Request This one is pretty straightforward ;-) +### Bump Shaarli version to v0.x branch + +``` +$ git checkout master +$ git fetch upstream +$ git pull upstream master + +# IF the branch doesn't exists +$ git checkout -b v0.5 +# OR if the branch already exists +$ git checkout v0.5 +$ git rebase upstream/master + +# Bump shaarli version from dev to 0.5.0, **without the `v`** +$ vim shaarli_version.php +$ git add shaarli_version +$ git commit -s -m "Bump Shaarli version to v0.5.0" +$ git push upstream v0.5 +``` + ### Create and push a signed tag ```bash # update your local copy -$ git checkout master +$ git checkout v0.5 $ git fetch upstream -$ git pull upstream master +$ git pull upstream v0.5 # create a signed tag $ git tag -s -m "Release v0.5.0" v0.5.0 @@ -84,7 +100,7 @@ $ git push --tags upstream ``` ### Verify a signed tag -[`v0.5.0`](https://github.com/shaarli/Shaarli/releases/tag/v0.5.0) is the first GPG-signed tag pushed on the Community Shaarli.[](.html) +[`v0.5.0`](https://github.com/shaarli/Shaarli/releases/tag/v0.5.0) is the first GPG-signed tag pushed on the Community Shaarli. Let's have a look at its signature! @@ -99,12 +115,12 @@ f7762cf803f03f5caf4b8078359a63783d0090c1 refs/tags/v0.5.0 # verify the tag signature information $ git verify-tag f7762cf803f03f5caf4b8078359a63783d0090c1 gpg: Signature made Thu 30 Jul 2015 11:46:34 CEST using RSA key ID 4100DF6F -gpg: Good signature from "VirtualTam " [ultimate][](.html) +gpg: Good signature from "VirtualTam " [ultimate] ``` ## Publish the GitHub release ### Update release badges -Update `README.md` so version badges display and point to the newly released Shaarli version(s). +Update `README.md` so version badges display and point to the newly released Shaarli version(s), in the `master` branch. ### Create a GitHub release from a Git tag From the previously drafted release: @@ -120,7 +136,9 @@ Users with a shared hosting may have: - no possibility to run scripts To ease Shaarli installations, it is possible to generate and upload additional release archives, -that will contain Shaarli code plus all required third-party libraries: +that will contain Shaarli code plus all required third-party libraries. + +**From the `v0.5` branch:** ```bash $ make release_archive @@ -131,3 +149,20 @@ This will create the following archives: - `shaarli-vX.Y.Z-full.zip` The archives need to be manually uploaded on the previously created GitHub release. + +### Update `stable` and `latest` branches + +``` +$ git checkout latest +# latest release +$ git merge v0.5.0 +# fix eventual conflicts +$ make test +$ git push upstream latest +$ git checkout stable +# latest previous major +$ git merge v0.4.5 +# fix eventual conflicts +$ make test +$ git push upstream stable +```