PHPackages                             pantheon-systems/quicksilver-pushback - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. pantheon-systems/quicksilver-pushback

ActiveQuicksilver-script[Utility &amp; Helpers](/categories/utility)

pantheon-systems/quicksilver-pushback
=====================================

Push commits made via the Pantheon dashboard back to original GitHub repository.

2.1.1(3y ago)153.1M—6.2%12[4 issues](https://github.com/pantheon-systems/quicksilver-pushback/issues)[1 PRs](https://github.com/pantheon-systems/quicksilver-pushback/pulls)18MITPHPCI failing

Since Jan 26Pushed 2mo ago14 watchersCompare

[ Source](https://github.com/pantheon-systems/quicksilver-pushback)[ Packagist](https://packagist.org/packages/pantheon-systems/quicksilver-pushback)[ RSS](/packages/pantheon-systems-quicksilver-pushback/feed)WikiDiscussions main Synced 1mo ago

READMEChangelog (3)Dependencies (1)Versions (20)Used By (18)

Quicksilver Pushback
====================

[](#quicksilver-pushback)

[![Actively Maintained](https://camo.githubusercontent.com/2ae5ff81f271fb028d720adee6b3595770166f3707a4705a4a2a3b71c332b249/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f50616e7468656f6e2d4163746976656c795f4d61696e7461696e65642d79656c6c6f773f6c6f676f3d70616e7468656f6e26636f6c6f723d464644433238)](https://pantheon.io/docs/oss-support-levels#actively-maintained)

[![Quicksilver Pushback v2.x](https://camo.githubusercontent.com/02ccea0df43d57864c0b3ed8a874db11b9ed65c976f440ec33ca3eaa1bbb35c3/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f517569636b73696c7665725f507573686261636b2d76322e782d677265656e2e737667)](https://camo.githubusercontent.com/02ccea0df43d57864c0b3ed8a874db11b9ed65c976f440ec33ca3eaa1bbb35c3/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f517569636b73696c7665725f507573686261636b2d76322e782d677265656e2e737667) [![Terminus v2.x Compatible](https://camo.githubusercontent.com/4cf69d5d2946c607d2f77591c24ad1f265f4d8d0b492255a97a7e5a03730aa7a/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f7465726d696e75732d76322e782d677265656e2e737667)](https://github.com/pantheon-systems/terminus-build-tools-plugin/tree/main)

This Quicksilver project is used in conjunction with the various suite of [Terminus Build Tools](https://github.com/pantheon-systems/terminus-build-tools-plugin)-based example repositories to push any commits made on the Pantheon dashboard back to the original Git repository for the site. This allows developers (or other users) to work on the Pantheon dashboard in SFTP mode and commit their code, through Pantheon, back to the canonical upstream repository via a PR. This is especially useful in scenarios where you want to export configuration (Drupal, WP-CFM).

Requirements
------------

[](#requirements)

It is recommended that you use one of the example PR workflow projects ([Drupal 8](https://www.github.com/pantheon-systems/example-drops-8-composer), [WordPress](https://www.github.com/pantheon-systems/example-wordpress-composer)) as a starting point for leveraging this tool.

- Support is only provided for the `2.x` version of Terminus Build Tools.
- The project currently supports Github, GitLab (including self-hosted), and BitBucket providers.
- This Quicksilver script only works with Pantheon sites that have been configured to use a Git PR workflow.

### Installation

[](#installation)

This project is designed to be included from a site's `composer.json` file, and placed in its appropriate installation directory by [Composer Installers](https://github.com/composer/installers).

In order for this to work, you should have the following in your composer.json file:

```
{
  "require": {
    "composer/installers": "^1.0.20"
  },
  "extra": {
    "installer-paths": {
      "web/private/scripts/quicksilver": ["type:quicksilver-script"]
    }
  }
}
```

The project can be included by using the command:

`composer require pantheon-systems/quicksilver-pushback:^2`

If you are using one of the example PR workflow projects ([Drupal 8](https://www.github.com/pantheon-systems/example-drops-8-composer), [WordPress](https://www.github.com/pantheon-systems/example-wordpress-composer)) as a starting point for your site, these entries should already be present in your `composer.json`.

### Example `pantheon.yml`

[](#example-pantheonyml)

Here's an example of what your `pantheon.yml` would look like if this were the only Quicksilver operation you wanted to use.

```
api_version: 1

workflows:
  sync_code:
    after:
      - type: webphp
        description: Push changes back to Git repository if needed
        script: private/scripts/quicksilver/quicksilver-pushback/push-back.php
```

If you are using one of the example PR workflow projects as a starting point for your site, this entry should already be present in your pantheon.yml.

### build-providers.json

[](#build-providersjson)

Quicksilver pushback requires a `build-providers.json` file in the git root that specifies the git provider used for the project.

Valid `git` provider values are `github`, `gitlab` and `bitbucket`.

Example contents of `build-providers.json` created by Terminus Build Tools for a GitHub and CircleCI project are below:

```
{"git":"github","ci":"circleci"}

```

Upgrading from `1.x` to `2.x`
-----------------------------

[](#upgrading-from-1x-to-2x)

Existing projects will have been created at different points in time, making the steps to upgrade slightly different for each project. In general, we have found success with the following:

- Update to Quicksilver Pushback `2.x`
- Copy `files/private/github-secrets.json` on the Pantheon site to `files/private/.build-secrets/tokens.json`
    - This must be done for all environments
- Ensure `build-providers.json` exists in the code base
    - Projects created from an older version of Terminus Build Tools may have this missing
- Update the Quicksilver Pushback script path in `pantheon.yml` from `private/scripts/quicksilver/quicksilver-pushback/push-back-to-github.php` to `private/scripts/quicksilver/quicksilver-pushback/push-back.php`

###  Health Score

55

—

FairBetter than 98% of packages

Maintenance51

Moderate activity, may be stable

Popularity51

Moderate usage in the ecosystem

Community33

Small or concentrated contributor base

Maturity72

Established project with proven stability

 Bus Factor2

2 contributors hold 50%+ of commits

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~216 days

Recently: every ~306 days

Total

11

Last Release

1231d ago

Major Versions

1.0.1 → 2.0.02019-08-28

### Community

Maintainers

![](https://www.gravatar.com/avatar/b34cc6bd882277b6c6dda19bf6631ae5c3a909fd667c826a15121642cdc051b2?d=identicon)[greg.1.anderson](/maintainers/greg.1.anderson)

![](https://www.gravatar.com/avatar/5a89f5f15357797cbd6ec7833a28626478ae3c0ceb5fa1faa8a26d0960584c65?d=identicon)[pantheon-systems](/maintainers/pantheon-systems)

---

Top Contributors

[![greg-1-anderson](https://avatars.githubusercontent.com/u/612191?v=4)](https://github.com/greg-1-anderson "greg-1-anderson (16 commits)")[![kporras07](https://avatars.githubusercontent.com/u/2217820?v=4)](https://github.com/kporras07 "kporras07 (9 commits)")[![ataylorme](https://avatars.githubusercontent.com/u/2133004?v=4)](https://github.com/ataylorme "ataylorme (4 commits)")[![namespacebrian](https://avatars.githubusercontent.com/u/87093053?v=4)](https://github.com/namespacebrian "namespacebrian (4 commits)")[![KostenetskyiAndrii](https://avatars.githubusercontent.com/u/99037292?v=4)](https://github.com/KostenetskyiAndrii "KostenetskyiAndrii (3 commits)")[![aaronbauman](https://avatars.githubusercontent.com/u/508451?v=4)](https://github.com/aaronbauman "aaronbauman (1 commits)")[![PMU-ops](https://avatars.githubusercontent.com/u/62953125?v=4)](https://github.com/PMU-ops "PMU-ops (1 commits)")

### Embed Badge

![Health badge](/badges/pantheon-systems-quicksilver-pushback/health.svg)

```
[![Health](https://phpackages.com/badges/pantheon-systems-quicksilver-pushback/health.svg)](https://phpackages.com/packages/pantheon-systems-quicksilver-pushback)
```

###  Alternatives

[rainlab/blog-plugin

Blog plugin for October CMS

17257.7k](/packages/rainlab-blog-plugin)[rainlab/builder-plugin

Builder plugin for October CMS

17147.2k1](/packages/rainlab-builder-plugin)[pfefferle/wordpress-activitypub

The ActivityPub protocol is a decentralized social networking protocol based upon the ActivityStreams 2.0 data format.

5671.4k1](/packages/pfefferle-wordpress-activitypub)[civicrm/civicrm-drupal-8

Open source constituent relationship management for non-profits, NGOs and advocacy organizations.

18238.1k2](/packages/civicrm-civicrm-drupal-8)[mediawiki/semantic-glossary

A terminology markup extension with a Semantic MediaWiki back-end

1352.4k](/packages/mediawiki-semantic-glossary)[humanmade/lottie-lite

A lightweight Lottie Animations Extension for WordPress

374.3k](/packages/humanmade-lottie-lite)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
