BitHub is a service that will automatically pay a percentage of Bitcoin funds for every submission to a GitHub repository.
More information can be found in our announcement blog post.
If you'd like to opt out of receiving a payment, simply include the string "FREEBIE" somewhere in your commit message, and you will not receive BTC for that commit.
By default, you need a coinbase account for recieving payment. However, if you add a Send-bitcoin-reward: -line to your commit, you recieve payment to that address instead.
You may consider adding a git hook that appends this line for you:
$ git config --global user.reward-btc "your-btc-address"
$ cat > .git/hooks/commit-msg << "EOF"
#!/bin/sh
VAR=$(git config -z user.reward-btc)
if [ -n "$VAR" ]; then
awk "/Signed-off-by:.*/ && c == 0 {c = 1; print \"Send-bitcoin-reward: $VAR\"}; {print} END{if(c == 0) {print \"Send-bitcoin-reward: $VAR\"}}" $1 > "$1".tmp
mv "$1".tmp $1
fi
EOF
$ chmod +x .git/hooks/commit-msg
$ git clone https://github.com/WhisperSystems/BitHub.git
$ cd BitHub
$ mvn3 package
- Create a GitHub account for your BitHub server.
- Create a Coinbase account for your BitHub server.
- Add the above credentials to
config/sample.yml - Execute
$ java -jar target/BitHub-0.1.jar server config/yourconfig.yml
$ heroku create your_app_name
$ heroku config:set GITHUB_USER=your_bithub_username
$ heroku config:set GITHUB_TOKEN=your_bithub_authtoken
$ heroku config:set GITHUB_WEBHOOK_PASSWORD=your_webhook_password
$ heroku config:set GITHUB_REPOSITORIES="[{\"url\" : \"https://github.com/youraccount/yourrepo\"}, {\"url\" : \"https://github.com/youraccount/yourotherrepo\"}]"
$ heroku config:set COINBASE_API_KEY=your_api_key
$ git remote add your_heroku_remote
$ git push heroku master
Have a question? Ask on our mailing list!
whispersystems@lists.riseup.net
