X-Git-Url: https://git.ralfj.de/git-mirror.git/blobdiff_plain/bfb46621b42cc60cc5433e87bb954e02db187719..HEAD:/README.md diff --git a/README.md b/README.md index 98b101f..6bcf71c 100644 --- a/README.md +++ b/README.md @@ -32,8 +32,11 @@ repository, so enable the following line in `/home/git/.gitolite.rc`: Make sure you read the [security note](http://gitolite.com/gitolite/non-core.html#pushcode) concerning this configuration. +Furthermore, uncomment the `repo-specific-hooks` line in the rc file or add it +to the `ENABLE` list if it doesn't exist. + Now add a file called `local/hooks/repo-specific/git-mirror` to your -`gitolite-admin` repository, make ii executable, and give it the following +`gitolite-admin` repository, make it executable, and give it the following content: #!/bin/sh @@ -95,7 +98,8 @@ The next step is to add this as a webhook to the GitHub repository you want to sync with, to create a fresh SSH key and configure it as deployment key for the repository, and to configure git-mirror accordingly. For additional security, one should also configure a shared HMAC secret, such that the webhook can verify -that the data indeed comes from GitHub. +that the data indeed comes from GitHub. On the git-mirror side, the HMAC secret +is configured with the `hmac-secret` repository option. To make your job easier, there is a script `github-add-hooks.py` that can do all this for you. It assumes that the repository exists on the GitHub side, but @@ -123,6 +127,10 @@ either gitolite or GitHub will be visible on the other side immediately. This applies even to pull requests that you merge in the GitHub web interface. +The script will only sync branches when they get pushed to. To initialize the +GitHub repository with all the branches that already exist, you can do `git push +--all git@github.com:user/repo`. + ## Source, License You can find the sources in the [git