There are two ways to set up this GitHub action:
Using SSH deploy keys (recommended, a bit harder to set up): push-to-another-repository-deploy-keys-example. The configuration is in the file ci.yml (ssh keys).
Using a Personal Access Token (first iteration, not recommended but easier to set up): push-to-another-repository-example. The configuration is in the file ci.yml (token).
Once the setup has been done, in the examples, the file build.sh (depending on your GitHub workflow) is executed, creating a new directory
output/, and this directory is copied across to the destination repository.
Please bear in mind that the files in the specified directory of the target repository are deleted unless the option target-directory is used (in this case, only the files for this directory are deleted).
Authentication: using SSH deploy keys or GitHub Personal Access Token (see Setup.)
Support for github.com server and also GitHub for Enterprise (via configuration github-server [optional] <github-server-configuration>.)
Specify in the configuration the source directory, destination directory and repository
Change the commit message
Extensive documentation including examples of copy only some files or how to use it with Sphinx
Since version 1.6: supports git-lfs