PHPackages                             floe/terminus-pushcode - 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. [DevOps &amp; Deployment](/categories/devops)
4. /
5. floe/terminus-pushcode

ActiveTerminus-plugin[DevOps &amp; Deployment](/categories/devops)

floe/terminus-pushcode
======================

Terminus Plugin to push code from current working directory to Pantheon

1221[1 issues](https://github.com/FloeDesignTechnologies/terminus-pushcode/issues)PHP

Since Feb 8Pushed 9y ago1 watchersCompare

[ Source](https://github.com/FloeDesignTechnologies/terminus-pushcode)[ Packagist](https://packagist.org/packages/floe/terminus-pushcode)[ RSS](/packages/floe-terminus-pushcode/feed)WikiDiscussions master Synced yesterday

READMEChangelogDependenciesVersions (1)Used By (0)

Terminus Push Code
==================

[](#terminus-push-code)

[![Terminus v1.x Compatible](https://camo.githubusercontent.com/9ea8fb0893368c0b24f172cc2df676fa4bb7246d14c0377b7924a6918065be26/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f7465726d696e75732d76312e782d677265656e2e737667)](https://camo.githubusercontent.com/9ea8fb0893368c0b24f172cc2df676fa4bb7246d14c0377b7924a6918065be26/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f7465726d696e75732d76312e782d677265656e2e737667)

[![Packagist](https://camo.githubusercontent.com/36fefe43f74d62de8e9a4eed9e8e437233bcf320b2471a4ec632bfe247b9110c/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f6c2f666c6f652f7465726d696e75732d70757368636f64652e737667)](https://raw.githubusercontent.com/FloeDesignTechnologies/terminus-pushcode/master/LICENSE)

A Terminus plugin providing a single command to push code in the current working directory to a Pantheon environment.

This command is intended to be used in development workflow where Pantheon is not used as the main Git repository. Instead, the main Git repository contains sources used to build what needs to be deployed on Pantheon (eg. a project using Composer without commiting the vendor directory). This command can then be used after a complete build to push its result to a Pantheon environment.

Note: The command should be updated to not require the current working direcotry to be a Git repository, see [\#3](https://github.com/FloeDesignTechnologies/terminus-pushcode/issues/3)

Installation
------------

[](#installation)

Install as a Terminus plugin (see ).

Code push to Pantheon is done with Git, this plugin requires a `git` executable usable from PHP (usually, being able to run `git` on the command line is all that is needed).

Configuration
-------------

[](#configuration)

When pushing code to Pantheon, using Git, the command rely on a `.pantheonignore` file in the current folder. This file list the files and directories to ignore while pushing chnages to Pantheon ()just like a `.gitignore` file).

Help
----

[](#help)

Run `terminus help push-code` to get help.

How it works
------------

[](#how-it-works)

Code push to Pantheon is done with Git, the theoretical behavior of this command is to

1. Checkout the HEAD of the branch for the pushed to environment to a temporary directory
2. Update this temporary directory to contains exactly what we want to push to Pantheon (ie. adding/removing/updating all the needed files)
3. Commit all the changes
4. Push the changes to Pantheon

To avoid the resources hungry and slow process of coping files to a temporary directory, step 2 is is done in an non-obvious way. Instead of copying the files over the temporary fresh clone, the `.git` of the current working directory is replaced with the one from the fresh clone. Also, the `.gitignore` files is temporally overridden with the `.pantheonignore` file as a way to control what is pushed to Pantheon. This allow Git commands in the working directory to act on a clone of the the Pantheon repo and then push to it. Once the command complete (whether on a success or a failure), the original `.git` and `.gitignore` are restored.

The pushed to environment does not need to actually exists. If it does not, the command create a new Git branch on Pantheon but not a new environment.

###  Health Score

16

—

LowBetter than 4% of packages

Maintenance0

Infrequent updates — may be unmaintained

Popularity9

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity41

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

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.

### Community

Maintainers

![](https://www.gravatar.com/avatar/2f6b76cb5ff0fa15479970b993cc4684a38587aacfc2f05889dc09bbf371507b?d=identicon)[pbuyle](/maintainers/pbuyle)

---

Top Contributors

[![pbuyle](https://avatars.githubusercontent.com/u/27399?v=4)](https://github.com/pbuyle "pbuyle (4 commits)")

---

Tags

pantheonterminusterminus-plugin

### Embed Badge

![Health badge](/badges/floe-terminus-pushcode/health.svg)

```
[![Health](https://phpackages.com/badges/floe-terminus-pushcode/health.svg)](https://phpackages.com/packages/floe-terminus-pushcode)
```

###  Alternatives

[in2code/in2publish_core

Content publishing extension to connect stage and production server

40143.4k](/packages/in2code-in2publish-core)[tiamo/phpas2

PHPAS2 is a php-based implementation of the EDIINT AS2 standard

4778.9k](/packages/tiamo-phpas2)[wapmorgan/php-rpm-packager

RPM packager for PHP applications.

116.5k](/packages/wapmorgan-php-rpm-packager)

PHPackages © 2026

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