title: How to setup authoring env to publish site to remote git repo?
body: <ol>
  <li>I downloaded and started authoring environment (crafter-cms-authoring.zip)</li>
  <li>Created site backed by remote git repo as described in: <a href="http://docs.craftercms.org/en/3.0/system-administrators/studio/create-site-with-link-to-remote-repo.html?highlight=remote#create-site-based-on-a-blueprint-then-push-to-remote-bare-git-repository" rel="nofollow noreferrer">Create site based on a blueprint then push to remote bare git repository</a></li>
  <li>Created a content type, new page.</li>
  <li>Published everything</li>
  </ol>
  <p>Now, I would expect, that I can see my changes in the remote repo. But all I can see are the initial commits from the 2. step above. No new content type, no new page, no branch &quot;live&quot;. (The content items are however visible in the local repo)</p>
  <p>What is missing?</p>
  <p><strong>Edit:</strong>
  Since Creafter can by set up in many ways, in order to clarify my deployment scenario, I am adding deployment diagram + short description.</p>
  <p><a href="https://i.stack.imgur.com/HJ1eS.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/HJ1eS.png" alt="headless deployment" /></a>
  There are 3 hosts - one for each environment + shared git repo.</p>
  <p><em>Authoring</em><br />
  This is where studio is located and content authors make changes. Each change is saved to the <code>sandbox</code> local git repository. When a content is published, the changes are pulled to the <code>published</code> local git repository. These two local repos are <strong>not accessible</strong> from other hosts.</p>
  <p><em>Delivery</em><br />
  This is what provides published content to the end user/application.
  <code>Deployer</code> is responsible for getting new publications to the delivery instance. It does so by polling (periodically pulling from) specific git repository. When it pulls new changes, it updates the local git repository <code>site</code>, and <code>Solr</code> indexes.</p>
  <p><em>Gitlab</em><br />
  This hosts git repository <code>site</code>. It <strong>is accessible</strong> from both - Authoring and Delivery hosts. After its creation, the new <code>site</code> is pushed to this repo. The repo is also polled for new changes by <code>Deployers</code> of Delivery instances.</p>
  <p>In order for this setup to work, the published changes must somehow end up in  Gitlab's <code>site</code> repo, but they do not (the red communication path from Authoring <code>Deployer</code> to the Gitlab's <code>site</code>)</p>
  <hr />
  <h1>Solution based on @summerz answer</h1>
  <p>I implemented <code>GitPushProcessor</code> and configured new deployment target in authoring <code>Deployer</code>, adding <code>mysite-live.yaml</code> to <code>/opt/crafter-cms-authoring/data/deployer/target/</code>:</p>
  <pre><code>target:
      env: live
      siteName: codelists
      engineUrl: http://localhost:9080
      localRepoPath: /opt/crafter-cms-authoring/data/repos/sites/mysite/published 
      deployment:
          pipeline:
          - processorName: gitPushProcessor
              remoteRepo:
                  url: ssh://path/to/gitlab/site/mysite
  </code></pre>