> ## Documentation Index
> Fetch the complete documentation index at: https://docs.useparagon.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Git Sync CI succeeded but the dashboard does not show my GitHub commits

> The push action updates the Paragon project; it never commits back to GitHub. Where to look instead.

Breadcrumb

If `paragraph-push-action` (or `para push`) succeeded and GitHub looks fine, but the Git Sync panel does not list that commit, the push updated the Paragon project. It did not write a new commit back to GitHub, and the panel only lists Git Sync action runs.

Confirm the change in the Development dashboard (workflows and integrations), not in the Git Sync commit list. To get dashboard edits into GitHub you need the pull GitHub Action. Do not connect Development and Production to the same repo and branch.

## Symptoms

* A merge to your Git Sync branch runs Push to Paragon successfully, but the Git Sync history in the dashboard does not show that GitHub commit.
* The commit appears under Production (or the other project you connected to the same branch), not under Development.
* You expected GitHub to receive a Paragon-generated commit after the CI push. It did not.
* Workflows in Production do not match the PR. That is expected if you only ran Git Sync push. Production is updated with a [Release](https://docs.useparagon.com/deploying-integrations/release-environments.md), not with `para push`.

## Cause

Git Sync is two separate pipelines. [Setting up Git Sync](https://docs.useparagon.com/paragraph/setting-up-git-sync.md) documents both:

| Direction | What runs | What you should see |
| - | - | - |
| Git → Paragon | `.github/workflows/paragraph-push.yml` (`paragraph-push-action`) | Changes in the **linked** Paragon project's dashboard |
| Paragon → Git | `.github/workflows/paragraph_pull_runner.yml` (`paragraph-pull-action`) | A new commit on the connected branch |
| Development → Staging → Production | A [Release](https://docs.useparagon.com/deploying-integrations/release-environments.md) | Production workflows match Development after you deploy |

`paragraph-push.yml` only builds and pushes Paragraph into Paragon. It never commits to GitHub. If GitHub is your source of truth and you omitted the pull workflow, there will be no Paragon → GitHub commits. That is one-way Git → Paragon, not a failed sync.

The Git Sync status UI lists those action runs. It is not a clone of `git log` on the branch. Ordinary GitHub commits that never ran the push or pull action do not appear there.

Two more mapping rules cause the "wrong place" symptom:

1. **`para push` cannot update Staging or Production.** [Build and Push](https://docs.useparagon.com/paragraph/build-and-push.md) says workflows cannot be pushed to those environments. Create a Release instead. You can still attach Git Sync to a Production project for a read-only export, but the platform will not apply GitHub pushes there.
2. **One repo and branch should map to one Paragon project.** Each project has its own IDs. Development and Production both pointing at `master` (or `main`) collide. The push can land in Development while the Git Sync history for that commit shows on Production, or the two projects fight over the same files.

## Fix

### 1. Check the dashboard, not only Git Sync history

Open the project that `paragraph-push.yml` is meant to update (Development, if you are using Releases). If the workflow or integration change from the PR is there, the push worked.

### 2. Use one Git Sync mapping for the writable project

Connect Git Sync to Development only when GitHub is the source of truth for code you will Release upward. If Production is still connected to the same repo and branch, disconnect it. [Resetting the repository](https://docs.useparagon.com/paragraph/setting-up-git-sync.md#resetting-the-repository) requires contacting support; you cannot always clear the mapping from the UI.

### 3. Add the pull workflow only if you want Paragon → GitHub

Copy `paragraph_pull_runner.yml` from [GitHub Actions Workflow Files](https://docs.useparagon.com/paragraph/setting-up-git-sync.md#github-actions-workflow-files). Dashboard Save Version / Git Sync events use that action to commit a diff. Skip it if you do not want dashboard edits written back to the repo.

### 4. Promote to Production with a Release

After Development has the Paragraph update, [create a Release](https://docs.useparagon.com/deploying-integrations/release-environments.md) Development → Staging → Production. Do not expect the GitHub Action to deploy Production.

## Prevention

* Treat `paragraph-push.yml` as deploy-to-Development (or to a single non-Release project), not as "mirror GitHub into the Git Sync panel."
* Do not attach two Paragon projects to the same repository and branch.
* If GitHub is the only source of truth, omit the pull action on purpose, and do not look for Paragon-authored commits.

## Still having issues?

Send the GitHub Action run URL, which Paragon projects have Git Sync connected (and to which repo/branch), whether `paragraph_pull_runner.yml` exists, and whether the dashboard change is visible in Development.

## Related articles

* [Setting up Git Sync](https://docs.useparagon.com/paragraph/setting-up-git-sync.md)
* [Build and Push](https://docs.useparagon.com/paragraph/build-and-push.md)
* [Release Environments](https://docs.useparagon.com/deploying-integrations/release-environments.md)
* [Getting Started with Paragraph](https://docs.useparagon.com/paragraph/getting-started.md)
