学习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. 解决报错(Could not create connection to database server.)

    org.apache.commons.dbcp.SQLNestedException: Cannot create PoolableConnectionFactory 尝试多种方法后发现是由于mysq ...

  2. 【PowerOJ1746&网络流24题】航空路线问题(费用流)

    题意: 思路: [问题分析] 求最长两条不相交路径,用最大费用最大流解决. [建模方法] 把第i个城市拆分成两个顶点<i.a>,<i.b>. 1.对于每个城市i,连接(< ...

  3. bat语法

    注释 :: 注释无回显 rem 注释有回显 关闭和开启回显 :: 关闭回显 @echo off echo abc :: 开启回显 echo on echo 查看命令帮助说明 rd /? 目录操作 创建 ...

  4. 【转】DataRow复制一行到另一个DataTable

     源地址:http://www.cnblogs.com/pains/archive/2007/11/22/969003.html   下面两个方法是DataRow复制一行到另一个DataTable的, ...

  5. ORACLE Physical Standby DG 之switch over

    DG架构图如下: 计划,切换之后的架构图: DG切换: 主备切换:这里所有的数据库数据文件.日志文件的路径是一致的 [旧主库]主库primarydb切换为备库standby3主库检查switchove ...

  6. CentOS7 日常操作 2

    常用命令 文件与目录操作 命令 解析 cd /home 进入 ‘/home’ 目录 cd .. 返回上一级目录 cd ../.. 返回上两级目录 cd - 返回上次所在目录 cp file1 file ...

  7. 使用Chrome逆向分析JS实战---分析google网站翻译器原文存放位置

    剧透:就是使用了一下Chrome DevTools的Memory功能,通过已知的JS变量的值查找JS内存中变量的引用 一:不分析一下现有的网页翻译方法么? 总所周知,(As is well known ...

  8. 004-windows(64位)下使用curl命令

    一.下载工具包:http://curl.haxx.se/download.html 二.使用 使用方式一:在curl.exe目录中使用 解压下载后的压缩文件,通过cmd命令进入到curl.exe所在的 ...

  9. AWK之随心所欲-高手篇

    1.内置变量 变量名 描述 FS 输入字段分隔符,默认是空格或制表符 OFS 输出字段分隔符,默认是空格 RS 输入记录分隔符,默认是换行符\n ORS 输出记录分隔符,默认是换行符\n NF 统计当 ...

  10. gradle implementation runtimeOnly 和api 区别

    implementation  不对外开发,只是本项目依赖. runtimeOnly 运行时才依赖 api 可以传递依赖,别的项目也可以依赖api的jar包.