Remove WordPress plugins under version control from update checks

Annoyed by the update information for plugins which are under version control like Git or SVN? Use this snippet to finally get rid of them.

/**
 * Removes plugins under version control from update checks.
 *
 * @param array  $request  An array of HTTP request arguments.
 * @param string $url     The request URL.
 * @return $array An array of HTTP request arguments.
 */
add_filter( 'http_request_args', function( $request, $url ) {
	if ( false === strpos( $url, 'api.wordpress.org/plugins/update-check' ) ) {
		return $request;
	}

	$vcs_dirs = [ '.git', '.svn', '.hg', '.bzr' ];

	$plugins = json_decode( $request['body']['plugins'] );
	foreach ( array_keys( (array) $plugins->plugins ) as $plugin ) {
		$plugin_dir = WP_PLUGIN_DIR . '/' . dirname( $plugin ) . '/';

		// Search directory for evidence of version control.
		foreach ( $vcs_dirs as $vcs_dir ) {
			if ( is_dir( $plugin_dir . $vcs_dir ) ) {
				// Remove plugin from the update check.
				unset( $plugins->plugins->$plugin );
				break;
			}
		}
	}

	$request['body']['plugins'] = wp_json_encode( $plugins );

	return $request;
}, 10, 2 );

You can extend $vcs_dirs with additional directories to add support for your VCS.

Photo by TUAN ANH TRAN.

Anleitung: GitLab 3.0 bei Uberspace.de installieren

GitLab ist ein Webinterface, ähnlich dem vom GitHub, welches die Projektverwaltung mit Git um einiges erleichtert. Dabei vereint es mehrere Elemente, wie Issues, Wiki oder Mehrbenutzer-Verwaltung. (GitLab Demo.)

Vor kurzem habe ich von GitLab gehört und wollte die Anwendung auf meinem Uberspace ausprobieren. Schaut man sich allerdings die Installationsanleitung an, so überschlägt sich diese nur so von sudo Aufrufen. Ein Hindernis für die Installation auf Uberspace.
Doch es geht auch ohne!

Die Anleitung bezieht sich auf eine GitLab Installation von Grund auf und umfasst 15 Schritte.
Als Grundlage habe ich die Anleitung vom Alexander (Danke!) aufgegriffen und entsprechend der jeweiligen neuen Versionen angepasst.

Continue reading Anleitung: GitLab 3.0 bei Uberspace.de installieren