获取 YUM 中 GIT 信息:
    yum info git

查看当前 GIT 的版本:
    git --version
    或
    git version

卸载当前版本的 GIT:
    yum remove git

再次查看当前 GIT 的版本,发现已不再显示 GIT 版本了,说明已卸载成功;

创建 git 目录,用于安装 GIT:
    mkdir -p git

安装 GIT 的依赖库(如果已安装则可以略过):
    yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel
    yum install gcc perl-ExtUtils-MakeMaker

查看系统用户组:
    cut -d: -f1 /etc/group
    其中的 -d:指定字段的分隔符,默认的字段分隔符为“TAB”;
    -f:显示指定字段的内容;

查看系统用户:
    cut -d: -f1 /etc/passwd

下载 git-2.9.4.tar.gz:
    wget https://www.kernel.org/pub/software/scm/git/git-2.9.4.tar.gz

将下载的 git-2.9.4.tar.gz 解压:
    tar -xzvf git-2.9.4.tar.gz

进入到 git-2.9.4 目录中:
    cd git-2.9.4

编译 GIT 源码:
    make prefix=/usr/local/git all

安装 GIT 到 /usr/local/git 目录中:
    make prefix=/usr/local/git install

为上传命令添加软链接:
    ln -s /usr/local/git/bin/git-upload-pack /usr/bin/git-upload-pack

为接收命令添加软链接:
    ln -s /usr/local/git/bin/git-receive-pack /usr/bin/git-receive-pack

为 GIT 命令添加软链接:
    ln -s /usr/local/git/bin/git /usr/bin/git

打开环境变量文件 profile :
    vim /etc/profile

在 profile 文件末尾添加如下命令:
    export PATH="/usr/local/git/bin:$PATH"

使环境变量配置文件即可生效:
    source /etc/profile

这时我们再看一下 git 的版本:
    git --version
    已经输出为:
    git version 2.9.4

创建名为 git 的用户组:
    groupadd git

创建名为 git 的用户并加入到 git 用户组中:
    useradd git -g git
    其中的第一个 git 是用户名,第二个 git 是用户组名,-g 表示加入用户组

查看已创建的 git 用户组:
    cut -d: -f1 /etc/group | grep git

查看已创建的 git 用户:
    cut -d: -f1 /etc/passwd | grep git

为用户 git 设置密码:
    passwd git
    根据提示输入密码,这里设置的为 123456,主要用于测试。

切换到 git 用户:
    su - git

进入到 /home/ 目录中:
    cd /home/
    此时我们位于 /home/ 目录中;

为用户 git 创建“专属用户目前” git 并进入到其中:
    mkdir -p git
    cd git
    此时我们位于 /home/git/ 目录中;

在 git 目录中创建隐藏目录 .ssh 并进入到其中:
    mkdir -p .ssh
    cd .ssh
    此时我们位于 /home/git/.ssh 目录中;

为用户 git 创建公钥和私钥:
    ssh-keygen -t rsa
    执行成功会打印 Generating public/private rsa key pair.
    根据提示输入两次密码,成功后会打印如下信息:
        Your identification has been saved in /home/git/.ssh/id_rsa.
        Your public key has been saved in /home/git/.ssh/id_rsa.pub.
    这指明了当前用户 git 的公钥和私钥的存放位置;

创建 authorized_keys 文件:
    touch authorized_keys
    将生成的公钥 id_rsa.pub 文件中的内容复制到 authorized_keys 目录中,注意一个用户占一行,不可有空格,这样对于当前用户 git 就对 GIT 服务有了拉取和推送数

据的权限了;同理,在其它用户的 .ssh 文件夹下生成的公钥加入到 authorized_keys  文件中(另起一行,一个用户占一行,不可有空格),那么其它用户也就有了对 GIT 服务

的拉取与推送数据的权限,从而不需要再输入密码;

注意:
    .ssh 文件夹的权限必须为 700
    chmod 700 .ssh
    authorized_keys 文件的权限必须为 600
    authorized_keys
    chmod 600 .ssh/authorized_keys

初始化名为 test_repository 的 git 测试库:
    git init --bare test_repository.git
    输出
    Initialized empty Git repository in /home/git/test_repository.git/
    则表示初始化名为 test_repository 库成功,这是个空库;

为 git 用户克隆一个库:
    git clone git@192.168.82.208:test_repository.git

我们也可以通过 Eclipse 远程连接 GIT 服务,在 Eclipse 的 Git Repositories 试图中直接粘贴 git@192.168.82.208:test_repository.git
即可;

备注:
    为指定用户创建公钥和私钥:
    ssh-keygen -t rsa -C git
    其中的 git 为用户名;

来源于:http://www.joyupx.com/test1/210

CentOS 上安装 GIT 服务的更多相关文章

  1. 在 CentOS 上安装 vsftp 服务

    在 CentOS 上安装 vsftp 服务 1.查看当前 CentOS 服务器是否已安装了 vsftpd 服务: rpm -q vsftpd 如果打印如下类似的信息则表明已安装 vsftpd 服务: ...

  2. CentOS上安装GitBlit服务

    简单介绍 在上一篇文章中,已经简单的介绍了如何在CentOS的服务器上搭建git服务器.但是这种方式实现的服务器功能比较弱,操作起来也比较繁琐.在网上搜索了一圈,感觉Gitblit比较符合我的需求.接 ...

  3. centos上搭建git服务--3

    前言:当我们想要实现几个小伙伴合作开发同一个项目,或者建立一个资源分享平台的时候,GIT就是一个很好的选择.当然,既然是一个共有平台,那么把这个平台放到个人计算机上明显是不合适的,因此就要在服务器上搭 ...

  4. Git学习系列之CentOS上安装Git详细步骤(图文详解)

    前言 最早Git是在Linux上开发的,很长一段时间内,Git也只能在Linux和Unix系统上跑.不过,慢慢地有人把它移植到了Windows上.现在,Git可以在Linux.Unix.Mac和Win ...

  5. centos上搭建git服务--4

    Git是目前世界上最先进的分布式版本控制系统(没有之一).使用Svn的请参考<版本控制-svn服务器搭建和常用命令(centos 6.3)>,下面介绍Git的常用命令 常用命令 简单版 升 ...

  6. centos上搭建git服务--2

    在 Linux 下搭建 Git 服务器   环境: 服务器 CentOS6.6 + git(version 1.7.1)客户端 Windows10 + git(version 2.8.4.window ...

  7. Centos上搭建git服务

    1.安装Git $ yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel perl-devel $ yum ...

  8. CentOS上安装Git及配置远程仓库

    首先登陆CentOS服务器,连接上服务器之后我们使用yum remove git 命令删除已安装的Git,若之前没安装过Git则不需要这一步.注意前提是你的CentOS服务器上安装了yum,这是Cen ...

  9. AWS ec2的ubuntu14.04上安装git服务

    http://imerc.xyz/2015/11/13/Ubuntu-14-04%E4%B8%8AGit%E6%9C%8D%E5%8A%A1%E5%99%A8%E7%9A%84%E6%90%AD%E5 ...

随机推荐

  1. P3356 火星探险问题

    \(\color{#0066ff}{题目描述}\) 火星探险队的登陆舱将在火星表面着陆,登陆舱内有多部障碍物探测车.登陆舱着陆后,探测车将离开登陆舱向先期到达的传送器方向移动.探测车在移动中还必须采集 ...

  2. 红帽JBoss企业应用平台

    概观 下载 你好,世界! 文档和API 救命 社区     你好,世界! 1. 设置您的开发环境 10分钟 2. 安装,配置和验证 5分钟 3. 构建您的第一个JBoss EAP应用程序 20分钟 1 ...

  3. react 中文文档案例七 (温度计)

    const scaleNames = { c: 'Celsius', f: 'Fahrenheit' }; function toCelsius(fahrenheit) { ) * / ; } fun ...

  4. SprimgMVC学习笔记(六)—— 全局异常的处理

    一.处理思路 springmvc在处理请求过程中出现异常信息交由异常处理器进行处理,自定义异常处理器可以实现一个系统的异常处理逻辑. 系统中异常包括两类:预期异常和运行时异常RuntimeExcept ...

  5. Django2.0以上版本的URL的正则匹配问题

    正则表达式形式的URL匹配问题: 1.导入re_path from django.urls import path,re_path 2.进行正则匹配 re_path('detail-(\d+).htm ...

  6. sublime 显示 python 错误信息

    默认的编译器可以直接按Ctrl+B编译运行Python,并在控制台输出结果.美中不足的是无法输出中文,需要自己手动配置一番. 在Sublime Text 3 中依次点击菜单Tools->buil ...

  7. SQL语句 ANSI_NULLS 值(ON|OFF)的含义

    官方说明: 1.当 SET ANSI_NULLS 为 ON 时,即使 column_name 中包含空值,使用 WHERE column_name = NULL 的 SELECT 语句仍返回零行. 即 ...

  8. hdu6299 Balanced Sequence 贪心

    题目传送门 题目大意:给出n个字符串,定义了平衡字符串,问这些字符串组合之后,最长的平衡字符子序列的长度. 思路: 首先肯定要把所有字符串先处理成全是不合法的,记录右括号的数量为a,左括号的数量为b, ...

  9. BZOJ1725】[Usaco2006 Nov]Corn Fields牧场的安排 状压DP

    Description Farmer John新买了一块长方形的牧场,这块牧场被划分成M列N行(1<=M<=12; 1<=N<=12),每一格都是一块正方形的土地.FJ打算在牧 ...

  10. Asp.net获取系统信息

    [DllImport("kernel32")]        public static extern void GlobalMemoryStatus(ref MEMORY_INF ...