之前弄了个ssh方式访问的git服务器,但是那种方式不太方便,而且网页也访问不了,所以这里又弄个http方式访问的git服务器。

安装过程还和之前一样,这里我再复制一遍,省的再去找了。

1、 安装依赖的库

[root@localhost ~]# yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel perl-devel

2、 删除原本的安装的git

[root@localhost ~]# yum remove git -y

3、下载git-2.10.0.tar.gz 到 /usr/local/src

[root@localhost ~]# cd /usr/local/src
[root@localhost src]# wget https://www.kernel.org/pub/software/scm/git/git-2.10.0.tar.gz

4、 编译安装

[root@localhost src]# tar -zvxf git-2.10.0.tar.gz
[root@localhost src]# cd git-2.10.0
[root@localhost src]# make prefix=/usr/local/git all
[root@localhost src]# make prefix=/usr/local/git install

5、 增加软连接

[root@localhost src]# ln -s /usr/local/git/bin/* /usr/bin/
[root@localhost src]# git --version

如果能正常显示版本号,即表示成功。

6、新建git仓库

[root@localhost root]$ mkdir /home/git/repositories/test.git
[root@localhost root]$ cd /home/git/repositories/test.git
[root@localhost test.git]$ git --bare init

7、修改上一步创建的文件夹test.git的所有者与所属群组,要让apache能读/写这个文件夹,注意这里-R必须加上,不然clone会出现权限不够问题

[root@localhost ~]# chown -R apache:apache /home/git

8、Apache的配置(ps:这里开始就和之前安装git方式不一样了)

8.1、安装Apache(系统有的可以忽略这一步)

[root@localhost src]# yum install httpd apr apr-util
[root@localhost src]# yum install httpd-manual mod_ssl mod_perl mod_auth_mysql

 启动Apache,并测试安装是否成功

[root@localhost src]# /bin/systemctl start httpd.service
[root@localhost src]# /bin/systemctl enable httpd
[root@localhost src]# /bin/systemctl status httpd.service

  

8.2、创建新用户,输入密码

[root@localhost ~]# htpasswd -m -c /etc/httpd/conf.d/git-team.htpasswd <username>

(PS:  -m:表示MD5加密方式 ;-c:表示创建文件,只有第一次创建用户时候加上该参数,以后不用)

8.3、设置git-team.htpasswd文件的访问权限

[root@localhost ~]# chmod 640 /etc/httpd/conf.d/git-team.htpasswd

8.4、修改apache配置文件httpd.conf

[root@localhost ~]# vi /etc/httpd/conf/httpd.conf

在文件末尾添加下列内容:

<VirtualHost *:80>
ServerName 自己的服务器IP或者域名
SetEnv GIT_HTTP_EXPORT_ALL
SetEnv GIT_PROJECT_ROOT /home/git/repositories
ScriptAlias /git/ /usr/libexec/git-core/git-http-backend/
<Location />
AuthType Basic
AuthName "Git"
AuthUserFile /etc/httpd/conf.d/git-team.htpasswd
Require valid-user
</Location>
</VirtualHost>

8.5、重启Apache

[root@localhost ~]# /bin/systemctl restart httpd.service

到这里git服务器基本功能就搭建好了,可以clone了

地址 http://自己服务器IP或域名/git/test.git

(PS:这里如果连接不上,可以查看你的防火墙80端口是否开启,如果没开启当然是无法clone的)

9、安装gitweb实现浏览器访问git服务器

9.1、下载安装gitweb

[root@localhost ~]# yum install gitweb

9.2、修改git.conf

[root@localhost ~]# vi /etc/httpd/conf.d/git.conf

将 "Alias /git /var/www/git" 改为 "Alias /gitweb /var/www/git"

9.3、修改gitweb.conf

[root@localhost ~]# vi /etc/gitweb.conf

修改成:our $projectroot = "/home/git/repositories"

ok,到这里就可以用浏览器访问了,地址 http://自己的服务器IP或者域名/gitweb/

10、客户端http方式访问的,每次都要输入密码这里可以设置长期存储密码,客户端运行

git config --global credential.helper store

增加仓库地址时候带上用户名(name)和密码(password)也可以

http://name:password@自己服务器IP或域名/git/test.git

这里注意一点,如果用户名是邮箱地址或者中文 把它 url编码 ,@对应的是%40

OK,到这里http方式访问的git服务器,安装到位,有需要的拿走,不谢!

 

centos7.0 下安装git(http方式)的更多相关文章

  1. centos7.0 下安装git(ssh方式)

    最近刚弄了个阿里云,在上面弄个git服务器,这里只弄了ssh方式访问,http方式访问的可以看我另外一个随笔http://www.cnblogs.com/hz-cww/p/6077970.html. ...

  2. 【CNMP系列】CentOS7.0下安装PHP5.6.30服务

    上一节我们讲过了如何在CentOS7.0下安装MySql服务,如果没有看到欢迎页面的朋友,可以加我的个人微信详聊:litao514148204 附上一节地址:http://www.cnblogs.co ...

  3. CentOS7.0下安装FTP服务的方法

    http://www.jb51.net/article/106604.htm   本篇文章主要介绍了CentOS7.0下安装FTP服务的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考.一起跟 ...

  4. 【CNMP系列】CentOS7.0下安装MySql5.6服务

    接上一回的话,CentOS7.0下安装好了Nginx服务,对于我们的CNMP,我们可以开始我们的M啦,就是传统意义上的MySql服务 MySql简介 MySQL是一个关系型数据库管理系统,由瑞典MyS ...

  5. 【Linux】CentOS7.0下安装JDK环境

    写在前面:此次试验是在CentOS7上面安装的,亲测成功. 所需工具:JDK1.8安装包,xftp 具体步骤: 1,首先使用xftp连接到自己的虚拟机,然后查看是否有"/usr/java/j ...

  6. 【Tomcat】CentOS7.0下安装多个Tomcat及其配置

    安装前所需环境 在开始安装Tomcat之前,需要安装环境JDK,并配置JAVA环境.如果不知道如何配置,可参考这篇博客:[Linux]CentOS7.0下安装JDK环境 Tomcat安装 Tomcat ...

  7. 【CNMP系列】CentOS7.0下安装Nginx服务

    话步前言,CNMP之路,系统起步:http://www.cnblogs.com/riverdubu/p/6425028.html 这回我来讲解下CentOS7.0下如何安装和配置Nginx服务 Ngi ...

  8. centos7.0 下安装jdk1.8

    centos7.0这里安装jdk1.8采用yum安装方式,非常简单. 1.查看yum库中jdk的版本 [root@localhost ~]# yum search java|grep jdk 2.选择 ...

  9. 【Nginx】Nginx简介及在CentOS7.0下安装教程

    是什么 Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,并在一个BSD-like 协议下发行.其特点是占有内存少,并发能力强,事实上nginx的并发能 ...

随机推荐

  1. 浅谈:javascript的面向对象编程之具体实现

    下面的javascript代码都是需要使用jQuery插件来做的.希望大家可以搭建好工作环境 首先我们来做一个练习:在一个删除的超链接中添加一个提示信息,提示是否确认删除. 一般情况下我们都会这么做 ...

  2. The common Linux Commands

    Linux的命令总结 1. man:在线请求系统帮助 例:man mkdir NAME:这个命令的完整全名 mk(make directories) SYNOPSIS:这个命令的基本语法 mkdir ...

  3. IOS-Hybrid(混合开发)

    http://www.cnblogs.com/oc-bowen/p/5423902.html 1.1.     APP三种开发模式 智能手机之普及不用多说,手机APP渗投到各个行业:电商(淘宝.京东等 ...

  4. Mysql支持的数据类型(总结)

    一.数值类型 Mysql支持所有标准SQL中的数值类型,其中包括严格数据类型(INTEGER,SMALLINT,DECIMAL,NUMBERIC),以及近似数值数据类型(FLOAT,REAL,DOUB ...

  5. 构建自己的PHP框架之自动加载类中详解spl_autoload_register()函数

    在了解这个函数之前先来看另一个函数:__autoload. 一.__autoload 这是一个自动加载函数,在PHP5中,当我们实例化一个未定义的类时,就会触发此函数.看下面例子: printit.c ...

  6. css3 圆角

    -moz-border-radius: 15px; /* Gecko browsers */ -webkit-border-radius: 15px; /* Webkit browsers */ bo ...

  7. Spring--多人开发

    在spring中, 可以定义多个配置文件. 例子: ①首先定义一个班级类和一个学生类 1 package com.fuwh.spring;      }                    }    ...

  8. Web Api系列教程第2季(OData篇)(二)——使用Web Api创建只读的OData服务

    前言 很久没更新了,之前有很多事情,所以拖了很久,非常抱歉.好了,废话不多说,下面开始正题.本篇仍然使用上一季的的项目背景(系列地址http://www.cnblogs.com/fzrain/p/34 ...

  9. Quartz.NET总结(四)Quartz 远程调度

    前面篇已经介绍了Quartz.NET的配置,使用和Cron表达式表达式的写法.基本上后台的定时任务的定时执行已经完成,并能正确的按照执行计划,执行相关的job . 然后,如果任务需要更新,停止某个任务 ...

  10. easyui如何动态改变列的编辑属性

    动态改变列的编辑属性 var tt=$('#dg').datagrid('getColumnOption', 'yearContent'); //通过列名获得此列 tt.editor={type:'t ...