我正在使用Apache和git-http-backend.exe在WS 2008机器上设置Git服务器(1.7.2.3).我一直在关注一个良好的啧啧这里.我有GUI工作,我可以惹恼克隆,如果我把以下内容放在回购配置中我可以惹恼:
[http]
receivepack = true
Run Code Online (Sandbox Code Playgroud)
我已将以下内容添加到httpd.conf文件中:
SetEnv GIT_PROJECT_ROOT C:/GIT/Repositories
SetEnv GIT_HTTP_EXPORT_ALL
ScriptAliasMatch \
"(?x)^/(.*/(HEAD | \
info/refs | \
objects/(info/[^/]+ | \
[0-9a-f]{2}/[0-9a-f]{38} | \
pack/pack-[0-9a-f]{40}\.(pack|idx)) | \
git-(upload|receive)-pack))$" \
"C:/Program Files (x86)/git/libexec/git-core/git-http-backend.exe/$1"
<Directory />
Allow from all
</Directory>
<LocationMatch "^/git/.*/git-receive-pack$">
AuthType Basic
AuthName "Git Access"
AuthUserFile C:/GIT/ApacheConfig/users
AuthGroupFile C:/GIT/ApacheConfig/groups
Require group repogeneral
</LocationMatch>
Run Code Online (Sandbox Code Playgroud)
当我添加"LocationMatch"时,我仍然可以克隆,或者通过在URL中指定一个名称,git clone http://jon@myserver.com
它会提示输入密码并进行克隆.
但当我试图回到回购时,我得到以下内容:
错误:无法访问URL http://jon@myserver.com/newtestrepo.git/,返回代码22致命:git-http-push failed
我一直在查看http-backend.exe手册页中的示例,但无法让它们工作.
这是我的群组文件,(这只是测试示例,所以没有任何可用于prod):
admin: jon steve admin
webview: jon steve web
repogeneral: jon …Run Code Online (Sandbox Code Playgroud) 我在我的本地实例上有一个git repo.我想从家庭网络外部访问它.我应该在本地实例上为此创建一个git服务器和ssh服务器吗?还有什么是我应该使用ngrok隧道的端口.
任何输入都非常感谢.