Java321技术网

 找回密码
 立即注册
搜索
热搜: centos
查看: 8560|回复: 0
打印 上一主题 下一主题

centos6 下安装git(http方式)

[复制链接]

126

主题

126

帖子

815

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
815
跳转到指定楼层
楼主
发表于 2020-2-14 21:40:39 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
1、 安装依赖的库
  1. [root@localhost ~]# yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel perl-devel
复制代码

2、删除原本的安装的git
  1. [root@localhost ~]# yum remove git -y
复制代码
3、下载git-2.10.0.tar.gz 到 /usr/local/src
  1. [root@localhost ~]# cd /usr/local/src
  2. [root@localhost src]# wget https://www.kernel.org/pub/software/scm/git/git-2.10.0.tar.gz
复制代码
4、编译安装
  1. [root@localhost src]# tar -zvxf git-2.10.0.tar.gz
  2. [root@localhost src]# cd git-2.10.0
  3. [root@localhost src]# make prefix=/usr/local/git all
  4. [root@localhost src]# make prefix=/usr/local/git install
复制代码

5、 增加软连接
  1. [root@localhost src]# ln -s /usr/local/git/bin/* /usr/bin/
  2. [root@localhost src]# git --version
复制代码

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

6、新建git仓库
  1. [root@localhost root]$ mkdir /home/git/repositories/test.git
  2. [root@localhost root]$ cd /home/git/repositories/test.git
  3. [root@localhost test.git]$ git --bare init
复制代码

7、修改上一步创建的文件夹test.git的所有者与所属群组,要让apache能读/写这个文件夹,注意这里-R必须加上,不然clone会出现权限不够问题
  1. [root@localhost ~]# chown -R apache:apache /home/git
复制代码
8、Apache的配置(ps:这里开始就和之前安装git方式不一样了)

8.1、安装Apache(系统有的可以忽略这一步)
  1. [root@localhost src]# yum install httpd apr apr-util
  2. [root@localhost src]# yum install httpd-manual mod_ssl mod_perl mod_auth_mysql
复制代码
启动Apache,并测试安装是否成功
  1. [root@localhost src]# /bin/systemctl start httpd.service
  2. [root@localhost src]# /bin/systemctl enable httpd
  3. [root@localhost src]# /bin/systemctl status httpd.service
复制代码


8.2、创建新用户,输入密码
  1. [root@localhost ~]# htpasswd -m -c /etc/httpd/conf.d/git-team.htpasswd <username>
复制代码

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

8.3、设置git-team.htpasswd文件的访问权限
  1. [root@localhost ~]# chmod 640 /etc/httpd/conf.d/git-team.htpasswd
复制代码
8.4、修改apache配置文件httpd.conf
  1.         [root@localhost ~]# vi /etc/httpd/conf/httpd.conf
复制代码
在文件末尾添加下列内容:
  1. <VirtualHost *:80>
  2.         ServerName 自己的服务器IP或者域名
  3.         SetEnv GIT_HTTP_EXPORT_ALL
  4.         SetEnv GIT_PROJECT_ROOT /home/git/repositories
  5.         ScriptAlias /git/ /usr/libexec/git-core/git-http-backend/
  6.         <Location />
  7.                 AuthType Basic
  8.                 AuthName "Git"
  9.                 AuthUserFile /etc/httpd/conf.d/git-team.htpasswd
  10.                 Require valid-user
  11.         </Location>
  12. </VirtualHost>
复制代码
8.5、重启Apache
  1. [root@localhost ~]# /bin/systemctl restart httpd.service
复制代码
到这里git服务器基本功能就搭建好了,可以clone了
地址 http://自己服务器IP或域名/git/test.git
(PS:这里如果连接不上,可以查看你的防火墙80端口是否开启,如果没开启当然是无法clone的)

9、安装gitweb实现浏览器访问git服务器
9.1、下载安装gitweb
  1. [root@localhost ~]# yum install gitweb
复制代码
9.2、修改git.conf
  1. [root@localhost ~]# vi /etc/httpd/conf.d/git.conf
复制代码
将 "Alias /git /var/www/git" 改为 "Alias /gitweb /var/www/git"

9.3、修改gitweb.conf
  1. [root@localhost ~]# vi /etc/gitweb.conf
复制代码
修改成:our $projectroot = "/home/git/repositories"

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

10、客户端http方式访问的,每次都要输入密码这里可以设置长期存储密码,客户端运行
  1. git config --global credential.helper store
复制代码
增加仓库地址时候带上用户名(name)和密码(password)也可以
  1. http://name:password@<strong>自己服务器IP或域名/git/test.git</strong>
复制代码
这里注意一点,如果用户名是邮箱地址或者中文 把它 url编码 ,@对应的是%40


回复

使用道具 举报

QQ|Archiver|手机版|小黑屋|Java321技术网   蜀ICP备15030946号-1

GMT+8, 2024-4-20 03:31 , Processed in 0.058015 second(s), 24 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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