GitHub Updater 4.1 to Add Remote Installation for WordPress Plugins and Themes

WordPress Versus Github

GitHub Updater is a plugin that developers often use to enable automatic updates to GitHub or Bitbucket-hosted WordPress plugins and themes. The project was started in July 2013 by Andy Fragen, a trauma surgeon and plugin developer. Over the past two years GitHub Updater has received improvements from 14 contributors.

Fragen’s work on GitHub Updater makes it possible for developers to stay in their preferred GitHub/Bitbucket workflow and still ship updates for plugins and themes to their users. After reading about how WP Pusher is extending WordPress’ built-in auto updater to deploy remotely hosted themes and plugins, Fragen was inspired to investigate the possibility of adding remote installation of WordPress extensions to his GitHub Updater.

He now has the develop branch of the project working to successfully install both public and private GitHub or Bitbucket repositories remotely. “I must confess, the hardest part was getting everything in the Settings API functioning,” Fragen said.

With the help of some code from the WordPress Zero Spam plugin by Ben Marshall, and a few lines from TGM Plugin Activation by Thomas Griffin, he was able to get a tabbed settings interface in place in addition to the plugin dependency portion of the task.

“After setting up the tabs in the Settings page I was able to simply create the correct endpoint for GitHub and Bitbucket,” Fragen said. “I thought allowing for private repository remote installation might prove more difficult but a couple of modifications in other parts of the plugin made this relatively painless. It certainly makes downloading a repo from GitHub, renaming it correctly, and then uploading it a single-click experience.”

GitHub Updater is not allowed in the directory, as the guidelines forbid official plugins from allowing updates from anywhere outside of Developers usually opt for using the GitHub Updater when they want to host their plugins on GitHub/Bitbucket, or need to provide updates for private repositories.

The 4.1 release of GitHub Updater will include both remote installation and automatic updating in one package. If you want to test the functionality now, you can check out the develop branch. Feel free to log your issues and feedback on GitHub, as Fragen will be incorporating bug fixes into the 4.1 release.


11 responses to “GitHub Updater 4.1 to Add Remote Installation for WordPress Plugins and Themes”

    • I cannot speak with authority regarding WP Pusher, but GitHub Updater requires the developer of the plugin or theme to opt in to automatic updates by inserting a header into their code. It is also open source and developed on GitHub.

      While you can remotely install any plugin or them from GitHub or Bitbucket only those repos with the designated header will be receive automatic updates.

      My supposition is that WP Pusher stores the repos it installs in the database so it can access them later for updates. GitHub Updater only stores transients.

      GitHub Updater is free while WP Pusher is a paid service for certain features.

      If you have any specific questions I can answer, please let me know.

      • Thanks for the response. That helps clarify. They appear very similar.

        With Github Updater, how do you install a plugin from a private repo if you don’t have any other private repo hosted plugins installed? It appears you have to enter your private credentials in the Settings page, but that only shows up if you already have a private repo-hosted plugin installed in the 1st place. Am I missing something there?

        Great work, btw. Excited about these latest updates. This will help my work significantly.


Subscribe Via Email

Enter your email address to subscribe to this blog and receive notifications of new posts by email.