{"id":16914975,"url":"https://github.com/butuzov/wp-plugins-deploy","last_synced_at":"2026-04-12T07:33:35.125Z","repository":{"id":84870745,"uuid":"88735596","full_name":"butuzov/wp-plugins-deploy","owner":"butuzov","description":"WordPress PLugins: Develop @ GitHub and Publish @ http://plugins.svn.wp.org","archived":false,"fork":false,"pushed_at":"2019-12-13T13:59:06.000Z","size":36,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-03-20T02:47:02.868Z","etag":null,"topics":["git","svn","wordpress","wordpress-plugin"],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/butuzov.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-04-19T11:10:07.000Z","updated_at":"2019-12-13T13:59:08.000Z","dependencies_parsed_at":null,"dependency_job_id":"85d95045-548d-44d7-b207-aac77aa928f2","html_url":"https://github.com/butuzov/wp-plugins-deploy","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/butuzov%2Fwp-plugins-deploy","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/butuzov%2Fwp-plugins-deploy/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/butuzov%2Fwp-plugins-deploy/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/butuzov%2Fwp-plugins-deploy/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/butuzov","download_url":"https://codeload.github.com/butuzov/wp-plugins-deploy/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244679054,"owners_count":20492333,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["git","svn","wordpress","wordpress-plugin"],"created_at":"2024-10-13T19:15:43.183Z","updated_at":"2025-10-18T16:01:53.630Z","avatar_url":"https://github.com/butuzov.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Git to SVN for  WordPress Plugins or (wp-plugins-deploy)\n\n![GitHub All Releases](https://img.shields.io/github/downloads/butuzov/wp-plugins-deploy/total)\n\n## What this for?\n1. Develop your plugin using Git\n2. Deploy new release to WordPress Plugins Directory (SVN)\n\n## Example\n\n```bash\n# Execution Example Kwywords Description.\n#\n# -svn=URL Where URL is WP SVN for your Plugin\n# -git=URL Where URL is Git Repository URL\n# -user=USERNAME Where USERNAME is WP SVN Username (case sensitive)\n# -pass=******** WHERE ******** is WP SVN User password.\n./wp-deploy.sh --git=https://github.com/username/plugin-repo \\\n               --svn=http://plugins.svn.wordpress.org/plugin \\\n               --user=\"${WP_SVN_USER}\" --pass=\"${WP_SVN_PASSWORD}\"\n\n# redeploy current git tag\n./wp-deploy.sh --git=https://github.com/username/plugin-repo \\\n               --svn=http://plugins.svn.wordpress.org/plugin \\\n               --user=\"${WP_SVN_USER}\" -pass=\"${WP_SVN_PASSWORD}\" \\\n\t\t\t   --force\n```\n\n## Options\n\n* `-git` or `--git`: URL of GIT repository\n* `-svn` or `--svn`: URL of SVN repository\n* `-u`, `--u`, `-user`, `--user`, `-username` or `--username`: SVN username.\n* `-p`, `--p`, `-pass`, `--pass`, `-password` or `--password`: SVN username.\n* `-f`, `--force`: Force GIT tag redeployment.\n\n## A bit longer version of _\"What this shell script does\"_ ?\n\n1. Ensure that published version is newer then one in svn. ( It wouldn't allow you to publish code to repository that has `trunk` as `Stable Tag` in your `readme.txt` of if your `readme.txt` doesn't have `Stable Tag` at all.\n\n2. Convert your `readme.md` (or `readme.md`) and rest of `*.md` ( or `*.markdown` files) that found in your GitRepo root to `readme.txt` (so your repo *would not contains extra file you need to edit before release*) __[*](#readmetxt)__\n\n3. Update [Plugin Assets](https://developer.wordpress.org/plugins/wordpress-org/plugin-assets/) to correct locations. Shell script will search for your assets in root (`/`), `assets` and `wp-svn-assets` and then copy them all to `/assets` directory of your svn repo. __[*](#assets)__\n\n\t__NOTE__: I haven't found a way to make this files or folder as non-exportable and still use it while deploying (deploy script uses a export/archive version of repository).\n\n## Why? Inspiration.\n\nThis script is done to automate boring CD tasks. Inspired by  [svn2git-tools](https://github.com/ocean90/svn2git-tools/) by @ocean90.\n\n## Features \u0026 Todo's\n\n* [x] Generation of `readme.txt`: Allow you to use github style markdown, in order to generate readme.txt\n* [x] Separate Usage of assets (no need to deploy assets to final users if only wordpress plugins directory require it)\n* [x] Forse update of current release.\n\n\n### Troubleshooting.\n\n```bash\n# Something wrong with your `SVN_USER` its not exists in SVN or misspelled.\n# WordPress SVN usernames case sensitive btw\nsvn: E000000: Commit failed (details follow):\nsvn: E000000: Access to '/!svn/me' forbidden\n\n# You using wrong password `SVN_PASS`.\nsvn: E000000: Authentication failed and interactive prompting is disabled; see the --force-interactive option\nsvn: E000000: Commit failed (details follow):\nsvn: E000000: No more credentials or we tried too many times.\n```\n\n### Example Git repository.\n\nThis script used for deployments of [Debug Bar Rewrite Rules](https://github.com/butuzov/Debug-Bar-Rewrite-Rules) plugin.\n\n### Footnotes\n* \u003ca name=\"readmetxt\"\u003e\u003c/a\u003e `readme.txt` used only in [WordPress Plugin Directory](https://wordpress.org/plugins/), and keeping them in git repo (on my opinion) is pointless task.\n* \u003ca name=\"assets\"\u003e\u003c/a\u003e [Plugin Assets](https://developer.wordpress.org/plugins/wordpress-org/plugin-assets/) also only used by WordPress Plugin Directory\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbutuzov%2Fwp-plugins-deploy","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbutuzov%2Fwp-plugins-deploy","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbutuzov%2Fwp-plugins-deploy/lists"}