一. 安装 libiconv
这个是非常规项 如果服务器原来已经装过 可以不装 但是如果git安装时候提示找不到libiconv 需要在git的安装参数中指定安装路径
最新版是 1.15

  1. wget http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.15.tar.gz
  2. tar -zxvf libiconv-1.15.tar.gz
  3. cd libiconv-1.15
  4. ./configure --prefix=/usr/local/libiconv && make && make install
  5. rm -rf /usr/lib/libiconv.so //删除原有的软连接
  6. rm -rf /usr/lib/libiconv.so.2
  7. ln -s /usr/local/lib/libiconv.so /usr/lib 新建软连接
  8. ln -s /usr/local/lib/libiconv.so.2 /usr/lib

二. 卸载原有git 默认git一般版本都比较低 1.7 1.8的 现在已经2.9+了 所以先卸载原来老的

  1. rpm -e --nodeps git

三 安装git 具体版本自己找 本文以2.9.2为例

  1. cd ../ #返回上级目录
  2. wget https://github.com/git/git/archive/v2.9.2.tar.gz
  3. tar -xzvf v2.9.2.tar.gz
  4. cd git-2.9.2
  5. make prefix=/usr/local/git all #如果报错 使用下面的方式
  6. make prefix=/usr/local/git install #如果报错 使用下面的方式
  7. make configure
  8. ./configure --prefix=/usr/local/git --with-iconv=/usr/local/libiconv #libiconv地址改成自己的
  9. make && make install
  10. vi /etc/profile #添加到环境变量
    export PATH="/usr/local/git/bin:$PATH"
    source /etc/profile #是配置立即生效
  11. git --version #查看版本号
  12. 将git设置为默认路径,不然后面克隆时会报错
    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

  1. Git服务器打开RSA认证
    vi /etc/ssh/sshd_config #以下项前面的#去掉
    1.RSAAuthentication yes
    2.PubkeyAuthentication yes
    3.AuthorizedKeysFile .ssh/authorized_keys

  2. 禁止Shell登录
    vi /etc/passwd
    git:x:502:502::/home/git:/bin/bash 修改成下面的 git的路径要设置成自己的
    git:x:502:502::/home/git:/usr/local/git/bin/git-shell

  3. 创建git用户组和用户
    groupadd git
    useradd git -g git
    passwd git
    su - git #切换到刚创建的git用户

  4. 创建用户公钥文件
    cd /home/git/
    mkdir .ssh #新建文件夹
    chmod 700 .ssh
    touch .ssh/authorized_keys #新建文件
    chmod 600 .ssh/authorized_keys
    后续用户只需要向authorized_keys中添加自己的公钥

五. 创建仓库及使用
1. cd /home/git #在某个文件夹下创建
git init --bare test.git #创建一个空仓库 仓库名字叫 test

  2.  本地克隆仓库
git clone git@your-ip:test.git

CentOS7 搭建GIT环境的更多相关文章

  1. [.net 面向对象程序设计进阶] (25) 团队开发利器(四)分布式版本控制系统Git——使用GitStack+TortoiseGit 图形界面搭建Git环境

    [.net 面向对象程序设计进阶] (25) 团队开发利器(四)分布式版本控制系统Git——使用GitStack+TortoiseGit 图形界面搭建Git环境 本篇导读: 前面介绍了两款代码管理工具 ...

  2. 分布式版本控制系统Git——使用GitStack+TortoiseGit 图形界面搭建Git环境(服务器端及客户端)(转)

    近期想改公司内部的源码管控从TFS为git,发现yubinfeng大侠有关git的超详细大作,现将其转载并记录下,以防忘记,其原博客中有更加详细的git及.net开发相关内容.原文地址:http:// ...

  3. CentOS7——搭建LNMP环境(WordPress案例)

    CentOS7--搭建LNMP环境(WordPress案例) LNMP组成介绍 LNMP(Linux-Nginx-MySQL-PHP)网站架构是目前国际流行的Web框架,该框架包括:Linux操作系统 ...

  4. CentOS7搭建git服务器

    在CentOS7上搭建git服务器, 1.在Linux上安装git yum install -y git 验证是否安装成功,出现版本号即成功 git --version 2.创建版本库和用户 创建用户 ...

  5. Centos7 搭建lnmp环境 (centos7+nginx+MySQL5.7.9+PHP7)

    阿里云一台服务器出现问题! 我估计是一键安装包环境的原因,所以打算重新搭建下环境! 首先,当然是先做好快照!安全第一! 对系统盘做更换系统操作,装上纯净版的centos. 装好后,进入系统 一.挂载数 ...

  6. centos7 搭建 docker 环境

    1. 安装centos7  http://isoredirect.centos.org/centos/7/isos/x86_64/ 下载 everything 版本,最小化版本可能缺失很多东西 我是在 ...

  7. centos7搭建sonarqube环境+jenkins部署全流程

    一.简介sonarqube是一个用于代码质量管理的开源平台,用于管理源代码的质量 不遵循代码标准sonar可以通过PMD,CheckStyle,Findbugs等等代码规则检测工具规范代码编写.潜在的 ...

  8. 阿里云centos7搭建wordpress环境

    阿里云搭建wordpress系统 一.购买阿里云 二.安装php开发环境 1. https://www.apachefriends.org/zh_cn/index.html网站下载linux下的xam ...

  9. CentOS7 搭建Git服务器(转)

    1.在服务器上创建一个新用户 adduser git 2.创建一个Git仓库 cd /data/git //切换到希望创建工作区的目录git init --bare sample.git //创建一个 ...

随机推荐

  1. [转]Tomcat7基于Redis的Session共享

    转自:http://blog.csdn.net/catoop/article/details/48603891 目前,为了使web能适应大规模的访问,需要实现应用的集群部署.集群最有效的方案就是负载均 ...

  2. javascript 匿名函数及闭包----转载

    网上很多解释,我无法理解,我想知道原理...这篇文章应该可以透彻一点Query片段:view plaincopy to clipboardprint? (function(){      //这里忽略 ...

  3. Nancy使用Razor视图引擎时,提示对C:\Windows\temp 没有权限访问的问题

    Nancy下使用Razor视图需要添加DLL文件引用,通过Nuget安装: 发布网站,在IIS上建立站点后,提示错误:对C:\Windows\temp\XXXX 的访问被拒绝(在VS里F5调试的时候没 ...

  4. Kettle数据抽取解决方案

    一. Kettle介绍 1. Kettle简介 ETL即数据抽取(Extract).转换(Transform).装载(Load)的过程.Kettle的中文翻译为水壶.Kettle以元数据驱动的方式提供 ...

  5. Batch Normalization 笔记

    原理 BN的效果 Why BN works? 原理 输入层可以归一化,那么其他层也应该可以归一化.但是有个重要的问题,为什么要引入beta和gamma. 为什么要引入beta和gamma 不总是要标准 ...

  6. .Net深入体验与实践第一章

    什么是委托?委托和事件是什么关系? 我的理解是委托朋友,事件是一个事情比如,中午12点要吃饭了,咱家搞忘了!还在继续嗨皮,我的朋友会叫我与他一起吃饭. 什么事反射? 可以获取.Net中的每个类型(类, ...

  7. [原]SDL开发教程

    SDL开发库:http://www.libsdl.org/ SDL中文开发教程:http://tjumyk.github.io/sdl-tutorial-cn/index.html SDL英文版开发教 ...

  8. Github注册

    官网:https://github.com/ sign in : 登录. sign up: 注册. 注意邮箱不可以随便乱填,邮箱用于激活账号和找回密码. 由于github的服务器在国外,访问比较慢,需 ...

  9. Java 学习笔记1

    最近开始学习Java. <%@ page language="java" import="java.util.*" pageEncoding=" ...

  10. HDU 1281 棋盘游戏 【二分图最大匹配】

    传送门:http://acm.hdu.edu.cn/showproblem.php?pid=1281 题意概括: 有N*M大的棋盘,要在里面放尽量多的“车”,求最多能放的车的个数,和为了放最多的车有多 ...