{"id":42635909,"url":"https://github.com/pasela/git-cgi-server","last_synced_at":"2026-01-29T05:51:30.442Z","repository":{"id":57510688,"uuid":"125470671","full_name":"pasela/git-cgi-server","owner":"pasela","description":"Simple Git Smart HTTP Server written in Go.","archived":false,"fork":false,"pushed_at":"2022-11-30T10:52:59.000Z","size":67,"stargazers_count":14,"open_issues_count":1,"forks_count":6,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-08-15T04:59:50.161Z","etag":null,"topics":["git","go","golang"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/pasela.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2018-03-16T05:59:20.000Z","updated_at":"2025-05-21T20:11:50.000Z","dependencies_parsed_at":"2023-01-22T01:58:09.845Z","dependency_job_id":null,"html_url":"https://github.com/pasela/git-cgi-server","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/pasela/git-cgi-server","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pasela%2Fgit-cgi-server","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pasela%2Fgit-cgi-server/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pasela%2Fgit-cgi-server/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pasela%2Fgit-cgi-server/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pasela","download_url":"https://codeload.github.com/pasela/git-cgi-server/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pasela%2Fgit-cgi-server/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28864430,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-28T22:56:21.783Z","status":"online","status_checked_at":"2026-01-29T02:00:06.714Z","response_time":59,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["git","go","golang"],"created_at":"2026-01-29T05:51:29.099Z","updated_at":"2026-01-29T05:51:30.425Z","avatar_url":"https://github.com/pasela.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# git-cgi-server\n\nSimple Git Smart HTTP Server (using git-http-backend) written in Go.\n\n## What is Git Smart HTTP?\n\nSee: https://git-scm.com/book/en/v2/Git-on-the-Server-Smart-HTTP\n\n## Features\n\n* Cross-platform\n* Simple and lightweight\n* Support HTTP authentication (Basic and Digest)\n* Support TLS\n\n## Motivation\n\n* I don't want to open SSH only for Git access.\n* I don't want to use rich HTTP servers (such as Apache, nginx, etc.) only for Git.\n* I don't want to change owner of repositories to the httpd user (such as httpd, www-data, etc.)\n* I want to launch easily without any complex installation and configuration.\n\n## Requirement\n\n* Git (including git-http-backend)\n\n## Installation\n\nUse `go get` or just download [binary releases](https://github.com/pasela/git-cgi-server/releases).\n\n```sh\ngo get github.com/pasela/git-cgi-server\n```\n\n## Usage\n\n```sh\ngit-cgi-server [OPTIONS] [REPOS_DIR]\n```\n\nExport all repositories:\n```sh\ngit-cgi-server --export-all /path/to/repos\n```\n\nEnable Basic authentication:\n```sh\ngit-cgi-server --basic-auth-file=/path/to/.htpasswd --auth-realm=MyGitRepos /path/to/repos\n```\n\nUse TLS:\n```sh\ngit-cgi-server --cert-file=/path/to/server.crt --key-file=/path/to/server.key /path/to/repos\n```\n\nSee `git-cgi-server -h` for more options.\n\n## Running git-cgi-server behind reverse proxy server\n\nYou can also serve git-cgi-server with reverse proxy.\n\nApache example: `/etc/httpd/conf.d/git.conf`\n\n```apache\n# Git Smart HTTP\nProxyPass /git http://localhost:10789/git\nProxyPassReverse /git http://localhost:10789/git\n```\n\n```sh\ngit-cgi-server\" \\\n    --addr=:10789 \\\n    --digest-auth-file=/path/to/.htdigest \\\n    --auth-realm=Git \\\n    --uri-prefix=/git/ \\\n    --export-all \\\n    /path/to/repos\n```\n\n## License\n\nApache 2.0 License\n\n## Author\n\nYuki (a.k.a. pasela)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpasela%2Fgit-cgi-server","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpasela%2Fgit-cgi-server","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpasela%2Fgit-cgi-server/lists"}