Anonymous Github is a proxy server to support anonymous browsing of Github repositories for open-science code and data.
Anonymous Github
Anonymous Github 是一个助力双盲论文投稿时实现 Github 仓库匿名化的系统。其公共实例部署于 https://anonymous.4open.science/。

Anonymous Github 可对以下内容进行匿名化处理:
- Github 仓库的所有者、组织及名称
- 文件与目录名称
- 所有扩展名的文件内容,包括 markdown、文本、Java 等
使用方法
公共实例
https://anonymous.4open.science/
命令行界面(CLI)
此 CLI 工具支持在本地对您的 GitHub 仓库进行匿名化操作,并根据您的配置设置生成匿名化的 zip 文件。
# Install the Anonymous GitHub CLI tool
npm install -g @tdurieux/anonymous_github
# Run the Anonymous GitHub CLI tool
anonymous_github
自建实例
1. 克隆仓库
git clone https://github.com/tdurieux/anonymous_github/
cd anonymous_github
npm i
2. 配置 GitHub 令牌
创建一个 .env 文件,内容如下:
GITHUB_TOKEN=<GITHUB_TOKEN>
CLIENT_ID=<CLIENT_ID>
CLIENT_SECRET=<CLIENT_SECRET>
PORT=5000
DB_USERNAME=
DB_PASSWORD=
AUTH_CALLBACK=http://localhost:5000/github/auth,
GITHUB_TOKEN可在此处生成:https://github.com/settings/tokens/new,需包含repo权限范围。CLIENT_ID和CLIENT_SECRET是创建新 GitHub 应用时生成的令牌,创建地址:https://github.com/settings/applications/new。- GitHub 应用的回调地址需定义为
https://<host>/github/auth(与 AUTH_CALLBACK 中的定义一致)。
3. 启动 Anonymous Github 服务器
docker-compose up -d
4. 访问 Anonymous Github
访问 http://localhost:5000。默认情况下,Anonymous Github 使用端口 5000。可在 docker-compose.yml 中修改端口。建议将 Anonymous GitHub 部署在 ngnix 之后,以处理 https 证书。
匿名化的范围是什么?
在双盲同行评审中,匿名化的范围仅限于论文及其在线附录,仅此而已,并非整个世界。谷歌搜索论文或在线附录的任何部分都可被视为故意试图破坏匿名性(解释)
它是如何工作的?
Anonymous Github 要么下载完整的仓库并对文件内容进行匿名化处理,要么将请求代理到 GitHub。在这两种情况下,文件的原始版本和匿名化版本都会缓存在服务器上。
相关工具
gitmask 是一个用于匿名向 Github 仓库贡献代码的工具。
blind-reviews 是一个浏览器扩展,它能让审核 GitHub 拉取请求的人隐藏提交者的身份信息。
另请参阅
下载使用量
项目总下载次数(含Clone、Pull、 zip 包及 release 下载),每日凌晨更新