搭建Git服务器教程(整理自腾讯云开发者实验室)

下载安装 Git

Git 是一款免费、开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。
此实验以 CentOS 7.2 x64 的系统为环境,搭建 git 服务器。

  • 安装依赖库和编译工具
    为了后续安装能正常进行,我们先来安装一些相关依赖库和编译工具

    yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel

    安装编译工具

    yum install gcc perl-ExtUtils-MakeMaker

  • 下载 Git

    选一个目录,用来放下载下来的安装包,这里将安装包放在 /usr/local/src 目录里

    cd /usr/local/src

    到官网找一个新版稳定的源码包下载到 /usr/local/src 文件夹里

    wget https://www.kernel.org/pub/software/scm/git/git-2.10.0.tar.gz

  • 解压和编译

    解压下载的源码包

    tar -zvxf git-2.10.0.tar.gz

    解压后进入 git-2.10.0 文件夹

    cd git-2.10.0

    执行编译

    make all prefix=/usr/local/git

    编译完成后, 安装到 /usr/local/git 目录下

    make install prefix=/usr/local/git

配置环境变量

  • 将 git 目录加入 PATH

    将原来的 PATH 指向目录修改为现在的目录

    echo ‘export PATH=$PATH:/usr/local/git/bin’ >> /etc/bashrc

    生效环境变量

    source /etc/bashrc

    此时我们能查看 git 版本号,说明我们已经安装成功了。

    git –version

创建 git 账号密码

  • 创建 git 账号

    为我们刚刚搭建好的 git 创建一个账号

    useradd -m gituser

    然后为这个账号设置密码 (控制台输入创建密码后,输入您自定义的密码,并二次确认。)

    passwd gituser

初始化 git 仓库并配置用户权限

  • 创建 git 仓库并初始化
    我们创建 /data/repositories 目录用于存放 git 仓库

    mkdir -p /data/repositories

    创建好后,初始化这个仓库

    cd /data/repositories/ && git init –bare test.git

  • 配置用户权限

    给 git 仓库目录设置用户和用户组并设置权限

    chown -R gituser:gituser /data/repositories
    chmod 755 /data/repositories

    查找 git-shell 所在目录(如果按照刚才的步骤执行, 这个位置应该是 /usr/local/git/bin/git-shell, 否则请通过 which git-shell 命令查看位置) , 编辑 /etc/passwd 文件,将最后一行关于 gituser 的登录 shell 配置改为 git-shell 的目录 (安全目的, 限制 git 账号的 ssh 连接只能是登录 git-shell), 如下:

    示例代码:/etc/passwd

    gituser:x:500:500::/home/gituser:/usr/local/git/bin/git-shell

  • 使用搭建好的 Git 服务

    克隆 test repo 到本地

    cd ~ && git clone gituser@<您的 CVM IP 地址>:/data/repositories/test.git

实验完成

恭喜,Git 服务器搭建完成, 从此以后你可以方便地将你的本地代码提交到 Git 服务器托管了。

搭建Git服务器教程(整理自腾讯云开发者实验室)的更多相关文章

  1. Centos搭建 Git 服务器教程

    搭建 GIT 服务器教程 下载安装 git Git 是一款免费.开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目. 此实验以 CentOS 7.2 x64 的系统为环境,搭建 git 服 ...

  2. 来腾讯云开发者实验室 学习.NET Core 2.0

    腾讯云开发者实验室为开发者提供了一个零门槛的在线实验平台,开发者实验室提供的能力: 零门槛扫码即可免费领取实验机器,支持使用自有机器参与,实验完成后支持保留实验成果: 在线 WEB IDE 支持 sh ...

  3. 来腾讯云开发者实验室 学习.NET

    腾讯云开发者实验室为开发者提供了一个零门槛的在线实验平台,开发者实验室提供的能力: 零门槛扫码即可免费领取实验机器,支持使用自有机器参与,实验完成后支持保留实验成果: 在线 WEB IDE 支持 sh ...

  4. Windows平台使用Gitblit搭建Git服务器教程

    Windows平台使用Gitblit搭建Git服务器图文教程 Git服务现在独树一帜,相比与SVN有更多的灵活性,最流行的开源项目托管网站Github上面,如果托管开源项目,那么就是免费使用的,但是闭 ...

  5. TortoiseGit - Win7使用Gitblit搭建Git服务器教程

    第一步:下载Java并且安装 第二步:配置Java环境变量环境变量 --> 系统变量1新建:变量名:JAVA_HOME变量值:D:\Program Files (x86)\Java\jdk1.6 ...

  6. 在windows上搭建git服务器教程

    1.首先,需要确保windows系统上安装并配置了Java运行环境,JDK>=1.7. 2.下载Gitblit,下载地址:http://www.gitblit.com/ 3.解压缩下载的压缩包即 ...

  7. 搭建 GIT 服务器教程

  8. Windows平台使用Gitblit搭建Git服务器图文教程

    Git服务现在独树一帜,相比与SVN有更多的灵活性,最流行的开源项目托管网站Github上面,如果托管开源项目,那么就是免费使用的,但是闭源的项目就会收取昂贵的费用,如果你不缺米,那么不在本文讨论的范 ...

  9. Windows平台上使用Github搭建Git服务器的图文教程

    Git没有客户端服务器端的概念,但是要共享Git仓库,就需要用到通信协议,例如SSH协议(FTP , HTTPS , SFTP等协议也能实现Git共享,此文档不讨论),但是SSH有客户端服务器端,所以 ...

  10. Windows平台下搭建Git服务器的图文教程

    Git没有客户端服务器端的概念,但是要共享Git仓库,就需要用到SSH协议(FTP , HTTPS , SFTP等协议也能实现Git共享,此文档不讨论),但是SSH有客户端服务器端,所以在window ...

随机推荐

  1. 数电第六周周结_by_yc

    时序逻辑电路的设计要点:   ①只有时钟信号和复位信号可以放在敏感列表里:   ②使用非阻塞赋值,即使用"<=";   ③无需对所有分支进行描述,对于未描述的分支,变量将保持 ...

  2. 批量将多个相同Excel表格内容合并到一个Excel表格的sheet工作簿当中。

    Sub Books2Sheets()Dim fd As FileDialog Set fd = Application.FileDialog(msoFileDialogFilePicker) Dim ...

  3. Promise基础知识

    Promise 1.Promise的前置小知识 进程(厂房) 程序的运行环境 线程(工人) 线程是实际进行运算的东西 同步 通常情况代码都是自上向下一行一行执行的 前边的代码不执行后边的代码也不会执行 ...

  4. 【每日一题】【迭代器,泛型】2022年1月8日-NC93 设计LRU缓存结构

    描述设计LRU(最近最少使用)缓存结构,该结构在构造时确定大小,假设大小为 k ,并有如下两个功能1. set(key, value):将记录(key, value)插入该结构2. get(key): ...

  5. CyclicBarrier循环屏障源码解析(基于jdk11)

    目录 CyclicBarrier循环屏障源码解析(基于jdk11) 1.1 CyclicBarrier概述 1.2 CyclicBarrier原理 1.2.1 基本结构(jdk11) 1.2.2 aw ...

  6. 复杂mysql/多表查询

    目录 多表查询的两种方法 sql语句基础语法补充 concat / existe / 表字段 增加 修改 删除 复杂sql练习题 多表查询的两种方法 方式1:连表操作 inner join 内连接 s ...

  7. JavaScript入门⑨-异步编程●异世界之旅

    JavaScript入门系列目录 JavaScript入门①-基础知识筑基 JavaScript入门②-函数(1)基础{浅出} JavaScript入门③-函数(2)原理{深入}执行上下文 JavaS ...

  8. 视图 触发器 事务 MVCC 存储过程 MySQL函数 MySQL流程控制 索引的数据结构 索引失效 慢查询优化explain 数据库设计三范式

    目录 视图 create view ... as 触发器 简介 创建触发器的语法 create trigger 触发器命名有一定的规律 临时修改SQL语句的结束符 delimiter 触发器的实际运用 ...

  9. 正则提取器和beanshell处理器组合,将提取的所有id拼接成字符串

    1.添加正则表达式,提取所有id值 2.添加beanshell处理器将所有的id值拼接成字符串 方法一: int N = Integer.parseInt(vars.get("build_m ...

  10. uniapp 打包app 引入高德地图

    一.高德地图注册key值 二.项目中添加配置 三.项目中引用 <view class="home-btom-box" > <view class="ho ...