Bash script to handle tagging on GitHub and deployment to WordPress SVN
GPL-3.0 License
A simple deploy script to push any branch from your GitHub repository to your WordPress.org plugin SVN for a new release.
Quick Links: Overview | Features | Usage | Contribute
Releasing WordPress plugins can be quite a chore so a script that handles all of that for you is very helpful. This allows you to do that.
This script is dummy proof and you do NOT need to configure anything so long as you have setup your GIT and SVN login globally. This is to insure you have write permission. Otherwise you will be asked to login every step of the way a GIT or SVN command runs before it proceeds.
Just run the script and follow the instructions as you go along and your new release will be up in no time.
Yes, it's free. But here's what you should really care about:
This is a non-commercial script. As such:
Please understand that this repository is not a place to seek help. Use it to report bugs, propose improvements, or discuss new features.
This script will pull down your remote GIT and SVN repositories, tag a release using the branch you specify, and commit everything to WordPress.org.
As you run the script it will asks questions at certain points to setup the process of the script such as the ROOT Path of your plugin, your GitHub username, repository slug etc.
When it comes to ask for which version you want to release it checks if it has already been tagged before continuing the rest of the script.
The following file types are removed from the parent directory of the plugin location to keep it clean from any development/repository files that the plugin does not need with the release.
* .git
* .github
* .wordpress-org
* tests
* apigen
* node_modules
* src
* .babelrc
* .editorconfig
* .eslintignore
* .eslintrc.json
* .gitattributes
* .gitignore
* .gitmodules
* gulpfile.js
* *.md (Any MarkDown file)
* *.rb (Any ruby file)
* *.sh (Any bash scripts)
* *.lock
* .coveralls.yml
* .scrutinizer.yml
* .travis.yml
* *.yml (Any other YML files)
* Gruntfile.js
* composer.json
* package.json
* package-lock.json
* .jscrsrc
* .jshintrc
* phpunit.xml
* phpunit.xml.dist
* *.xml (Any other XML files)
* .editorconfig
* apigen.neon
* screenshot-*.jpg
* screenshot-*.png
Don't see a file that needs to be removed. Create an issue and let me know which file or folder that needs to be removed.
To use the script you must:
sh release.sh
GitHub to WordPress.org Deployment Script is released freely and openly. Feedback or ideas and approaches to solving limitations in GitHub to WordPress.org Deployment Script is greatly appreciated.
If you think you have found a bug in the script, please open a new issue and I will do my best to help you out.
If you or your company use GitHub to WordPress.org Deployment Script or appreciate the work Im doing in open source, please consider supporting me directly so I can continue maintaining it and keep evolving the project.
You'll be helping to ensure I can spend the time not just fixing bugs, adding features or releasing new versions but also keeping the project afloat. Any contribution you make is a big help and is greatly appreciated.
Please also consider starring and sharing the project repository! This helps the project getting known and grow with the community.
I accept one-time donations and monthly via BuyMeACoffee.com
3L4cU7VJsXBFckstfJdP2moaNhTHzVDkKQ
0xc6a3C18cf11f5307bFa11F8BCBD51F355b6431cB
MNNy3xBK8sM8t1YUA2iAwdi9wRvZp9yRoi
Thank you for your support!
GitHub to WordPress.org Deployment Script is developed and maintained by Sbastien Dumont.