< some discussions around basic commands >
= Mirror a repo from foo.fixme.ch to somewhere else (github in this example) =
* Create the target repository (for github, create a new repo)
* Set a new push remote
<pre>
# Navigate to the repository
cd /home/gogs/gogs-repositories/YOUR_USER/YOU_REPO.git
# Switch to the gogs user
su gogs
# Add a push remote (Don't forget the `--mirror=push` !)
git remote add --mirror=push origin git@github.com:GITHUB_USER/YOUR_REPO.git
# Test it
git push --mirror
</pre>
You will certainly need to register a Deploy Key in your github project. See https://developer.github.com/guides/managing-deploy-keys/#deploy-keys
* Check that a `post-receive` git hook is defined for you repository on git.fixme.ch
You can access it here :
https://git.fixme.ch/YOUR_USER/YOUR_REPO/settings/hooks/git/post-receive
The content should be something like that:
<pre>
git push --mirror
</pre>
* That's it. You can try with a simple commit and push.
<pre>
# In your local clone
touch test_mirror
git add test_mirror
git commit -m "test push to mirror"
git push
</pre>
= Gogs =