学习Git不同的服务器形式,具体如下:

- 创建SSH协议服务器

- 创建Git协议服务器

- 创建HTTP协议服务器

方案: Git支持很多服务器协议形式,不同协议的Git服务器,客户端就可以使用不同的形式访问服务器.常见的服务器协议有SSH协议、Git协议、HTTP协议.

拓扑图:

步骤:

一, SSH协议服务器(支持读写操作)

1. 在web1上创建基于密码验证的SSH协议服务器

[root@web1 ~]# git init --bare /var/git/base_ssh

Initialized empty Git repository in /var/git/base_ssh/

2. 客户端web2访问

[root@web2 ~]# git clone root@192.168.2.100:/var/git/base_ssh

[root@web2 ~]# rm -rf base_ssh

3.客户端web2生成SSH密钥,实现免密码登陆git服务器

[root@web2 ~]# ssh-keygen -f /root/.ssh/id_rsa -N ''

[root@web2 ~]# ssh-copy-id 192.168.2.100

[root@web2 ~]# git clone root@192.168.2.100:/var/git

[root@web2 ~]# git push

二, Git协议服务器(只读操作的服务器)

1. web1上安装git-daemon软件包

[root@web1 ~]# yum -y install git-daemon

2. web1上创建版本库

[root@web1 ~]# git init --bare /var/git/base_git

Initialized empty Git repository in /var/git/base_git/

3. 在web1上修改配置文件,启动git服务

[root@web1 ~]# vim /usr/lib/systemd/system/git@.service

修改前:

ExecStart=-/usr/libexec/git-core/git-daemon --base-path=/var/lib/git

--export-all --user-path=public_git --syslog --inetd –verbose

修改后:

ExecStart=-/usr/libexec/git-core/git-daemon --base-path=/var/git

--export-all --user-path=public_git --syslog --inetd –verbose

[root@web1 ~]# systemctl start git.socket

4. 客户端web2访问

[root@web2 ~]# git clone git://192.168.2.100/base_git

三, HTTP协议服务器(只读操作的服务器)

1. web1上安装gitweb、httpd软件包

[root@web1 ~]# yum -y install httpd gitweb

2. web1上修改配置文件,设置仓库根目录

[root@web1 ~]# vim +11 /etc/gitweb.conf

$projectroot = "/var/git";       #添加这一行

3. web1上创建版本仓库

[root@web1 ~]# git init --bare /var/git/base_http

4. web1启动httpd服务器

[root@web1 ~]# systemctl start httpd

5. 客户端web2访问

注意:调用虚拟机中的firefox浏览器,需要在远程时使用ssh -X 服务器IP,并且确保真实主机的firefox已经关闭

[root@web2 ~]# firefox http://192.168.2.100/git/

结束.

常见3种Git服务器的构建的更多相关文章

  1. Gitolite 构建 Git 服务器

    Gitolite 构建 Git 服务器 Gitolite 构建 Git 服务器作者: 北京群英汇信息技术有限公司网址: http://www.ossxp.com/版本: 0.1-1日期: 2010-1 ...

  2. 关于git服务器的搭建

    Git 服务器可搭建在多个系统平台上. 本篇以 Windows 和 Ubuntu 系统为例,简单介绍 Git 服务器的构建. 最后使用 eclipse 的 egit 插件和 git clone 这两种 ...

  3. Git学习总结(9)——如何构建你自己的 Git 服务器

    现在我们将开始学习如何构建一个Git服务器,如何在具体的事件中写一个针对特定的触发操作的自定义Git(例如通告),如何发布你的代码到一个网站. 目前为止,用户对Git的焦点主要在Git的使用上.这篇文 ...

  4. 用Gitolite 构建 Git 服务器

    转载 Gitolite 构建 Git 服务器 作者: 北京群英汇信息技术有限公司 网址: http://www.ossxp.com/ 版本: 0.1-1 日期: 2010-10-07 14:52:19 ...

  5. Java中常见的5种WEB服务器介绍

    这篇文章主要介绍了Java中常见的5种WEB服务器介绍,它们分别是Tomcat.Resin.JBoss.WebSphere.WebLogic,需要的朋友可以参考下 Web服务器是运行及发布Web应用的 ...

  6. 使用centos7构建本地git服务器

    git的安装非常简单 直接yum install git -y即可 大概看一下我的执行步骤吧 首先在服务器上执行以下操作,完成创建仓库 mkdir -p /data/test/bp.git #创建仓库 ...

  7. 搭建通过 ssh 访问的 Git 服务器

    一.Git 协议 Git 可以使用四种主要的协议来传输数据:本地传输,ssh 协议,Git 协议和 HTTP 协议. Git 使用的传输协议中最常见的就是 ssh 了.大多数环境已经支持通过 ssh ...

  8. Git服务器分类

    目录(?)[-] 服务器上的 Git 协议 本地协议 优点 缺点 SSH 协议 优点 缺点 Git 协议 优点 缺点 HTTPS 协议 优点 缺点 在服务器部署 Git 将纯目录转移到服务器 小型安装 ...

  9. Linux安全应用之防垃圾邮件服务器的构建

    Linux安全应用之防垃圾邮件服务器的构建 一.垃圾邮件产生的原因 垃圾邮件(SPAM) 也称作UCE(Unsoticited Commercial Email.未经许可的商业电子邮件)或UBE(Un ...

随机推荐

  1. (8)Linux(客户端)和Windows(服务端)下socket通信实例

    Linux(客户端)和Windows(服务端)下socket通信实例: (1)首先是Windows做客户端,Linux做服务端的程序 Windows   Client端 #include <st ...

  2. echarts曲线图

    drawLeftLine(){ let drawLine = echarts.init(document.getElementById('data-left-middle-table-wrap')); ...

  3. D - Find Integer

    D - Find Integer $a^{n}+b^{n}=c^{n}$ 给定a,n求解$b,c$ 三次以上没有整数解 #include<bits/stdc++.h> using name ...

  4. uploadify加ASP.NET MVC3.0上传文件(可多条)

    页面代码: <div id="fileQueuePlug"></div> <input type="file" name=&quo ...

  5. [BZOJ4552]:[Tjoi2016&Heoi2016]排序(桶排序)

    题目传送门 题目描述 在2016年,佳媛姐姐喜欢上了数字序列. 因而她经常研究关于序列的一些奇奇怪怪的问题,现在她在研究一个难题,需要你来帮助她. 这个难题是这样子的:给出一个1到n的全排列,现在对这 ...

  6. DEDECMS首页,列表页调用自定义图片字段,只显示图片地址

    第一步:将自定义字段“图片”类型改为“图片(仅地址)”类型. 第二部:在{dede:arclist row='1' addfields='stu' titlelen='24' orderby='pub ...

  7. Implement Queue using Stacks(用两个栈实现队列)

    来源:https://leetcode.com/problems/implement-queue-using-stacks Implement the following operations of ...

  8. [19/05/07-星期二] JDBC(Java DataBase Connectivity)_CLOB(存储大量的文本数据)与BLOB(存储大量的二进制数据)

    一. CLOB(Character Large Object ) – 用于存储大量的文本数据 – 大字段有些特殊,不同数据库处理的方式不一样,大字段的操作常常是以流的方式来处理的.而非一般的字段,一次 ...

  9. checkbox radio 多次操作失效

    checkbox radio 多次操作失效 , 将attr替换为prop $(this).attr('checked',true); $(this).attr('checked',false); $( ...

  10. C#异步:AsyncCallback和IAsyncResult

    在线程池异步的执行委托,异步编程模型 msdn官方解释:https://msdn.microsoft.com/zh-cn/library/ms228972(VS.80).aspx 使用AsyncCal ...