ClassicPress Development with GitHub: Create Release

GitHubWhen I started developing plugins for ClassicPress I decided that I needed to be using source control. As ClassicPress is intending to use GitHub for their plugin directory, it made sense for me to use it as well. This post is part of a series on ClassicPress Development with GitHub.

When developing with GitHub, you can make a release; this is a way of grouping together all of the changes since the last release to make it easy to download that particular code set. One point to note, is that while GitHub will automatically create a zip of the source code, this isn’t suitable to use for a ClassicPress release as it will include -master in the contained directory name. However, you can upload a zip file containing the code in the correct folder.

To create a new release, load the repository page on GitHub and click the releases button (red ringed):

Repository page

As I am working in a new repository, there are no existing releases. Click the Create a new release button; when there are existing releases, there is instead a Draft a new release button in the top right:

Create a new release

When developing for ClassicPress, Semantic versioning should be used. As such, the first version will be 1.0.0. Enter v1.0.0 in the Tag version and Release title.

Enter a description for the release; this should be descriptive so people know what is in the version they download.

You can drag and drop the zip file of the release into the Attach binaries by dropping them here or selecting them section of the page:

Click Publish release button:

Published release

As time goes by and you make additional releases, all releases will be displayed on this page, with the newest at the top:

All releases

What should we write about next?

If there is a topic which fits the typical ones of this site, which you would like to see me write about, please use the form, below, to submit your idea.

Your Name

Your Email

Suggested Topic

Suggestion Details

Leave a Reply

Your email address will not be published. Required fields are marked *