[[!comment format=mdwn username="https://www.google.com/accounts/o8/id?id=AItOawl9sYlePmv1xK-VvjBdN-5doOa_Xw-jH4U" nickname="Richard" subject="comment 4" date="2014-01-02T01:15:40Z" content=""" Another use case of read-only repos: Instead of merging pull requests or anything, with git-annex, it makes most sense to simply set up the other party as a remote and `git annex sync`. This will attempt to push to the other remote. In this specific case: % git annex sync commit ok pull origin ok pull greggrossmeier ok push origin Counting objects: 113, done. Delta compression using up to 4 threads. Compressing objects: 100% (84/84), done. Writing objects: 100% (98/98), 25.16 KiB | 0 bytes/s, done. Total 98 (delta 17), reused 1 (delta 0) To git@github.com:RichiH/conference_proceedings.git * [new branch] git-annex -> synced/git-annex * [new branch] master -> synced/master ok push greggrossmeier Username for 'https://github.com': Password for 'https://github.com': remote: Anonymous access to greggrossmeier/conference_proceedings.git denied. fatal: Authentication failed for 'https://github.com/greggrossmeier/conference_proceedings.git/' Username for 'https://github.com': Password for 'https://github.com': Pushing to greggrossmeier failed. (non-fast-forward problems can be solved by setting receive.denyNonFastforwards to false in the remote's git config) failed git-annex: sync: 1 failed % """]]