设为首页 收藏本站
查看: 1493|回复: 0

[经验分享] 用Apache配置Git服务器

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2015-8-2 13:17:02 | 显示全部楼层 |阅读模式
用Apache配置Git服务器


安装环境



  • Windows 2003
  • Apache openlogic-apache-2.2.15-windows-ins-openssl-1
  • Git-1.8.1.2-preview20130201
  参考资源:


  • 搭建 Windows 上 Apache + Git 服务器
  • msysgit+apache安装说明 - git服务器部分
  • Hosting a Git server under Apache on Windows
  • apache账号密码限制用户访问
  虽然已经有不少的参考的资源,但是对于不熟悉Apache和Git的新手在安装和使用过程中还是遇到一些问题。记录一下自己遇到的主要问题和整理下相关资源。
  局限性:只是在局域网内搭建的Git Server如果需要支持外网访问,需要参考其他资料。

下载安装文件



  • msysgit
  • Apache
  • Source Tree

安装文件



  • Apache默认安装
  • Git安装这里需要注意的是,网上有些文章声称,需要在安装时选择 Run git from the Windows Command prompt。对此持保留意见,因为不选择这一项也是可以的。不过为了谨慎起见,还是选择此项为好。

配置Git

  全部安装完成后,主要的工作就是配置Apache的config文件。 找到config文件的地址:C:\Program Files\Apache Software Foundation\Apache2.2\conf
在config文件的后面追加下面内容


  • 第一句是我们Git的目标文件夹地址
  • 第二句要注意后面的空格和参数1,有文章说随便指定参数也可以,比如设置成2,我没有试验也没有了解原理。
  • 第三句主要ScriptAliasMatch加空格后的字符串要在一行上。
  • git-http-backend.exe 是在Git的安装文件夹下找到。

    • 如果 git-http-backend.exe不能执行,提示没有找到libiconv-2.dll,该文件位于 C:\Program Files\Git\bin。复制到 C:\Program Files\Git\libexec\git-core


  • 注意中的目录位置



SetEnv GIT_PROJECT_ROOT D:/Repository
SetEnv GIT_HTTP_EXPORT_ALL 1
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/Git/libexec/git-core/git-http-backend.exe/$1"

OptionsIndexesFollowSymLinks
AllowOverrideAuthConfig
Order allow,deny
Allowfrom all

  完成上述操作就已完成Git的基本配置,可以通过命令行创建库。


  • 创建文件夹D:Reposiotry
  • 用命令行进入Reposiotry
  • 执行git init --bare Test.git
  Test的空库创建好后,可以用我们的Source Tree获取测试。

授权

  配置好基本Git后,需要做授权设置,首先也是需要在config中加入以下内容:


  • 注意AuthUserFile后面的内容是不加引号的




AuthType Basic
AuthName “Repository”
AuthBasicProvider file
AuthUserFile C:/htpasswd/.passwd
Require valid-user


  • 在C:\Program Files\Apache Software Foundation\Apache2.2\bin中找到.passwd和htpassword,复制到C:/htpasswd/
  • 创建用户名和密码,有两种方式

    • 通过命令行行创建

      • 需要在C:\Program Files\Apache Software Foundation\Apache2.2\bin目录中,或者设置这个目录到环境变量中
      • 执行命令htpasswd -cmb htpassword abc 123456可以获得.passwd和htpassword
      • 关于更多的htpasswd 命令参考apache htpasswd命令用法详解

    • 通过在线的工具生成

      • HTPASSWD GENERATOR – CREATE HTPASSWD
      • 把生成出来的内容考到.passwd和htpassword中


  • 重启服务器用Source Tree 测试

其他学习资源



  • Git详解系列 学习Git相关内容

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-93342-1-1.html 上篇帖子: 在apache上安装gitweb实现浏览器访问git服务器 下篇帖子: msysgit+apache安装说明
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表