搭建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. easyUI ajax拼接样式失效

    重新渲染:  $.parser.parse() 

  2. vulnhub靶场之HACKSUDO: THOR

    准备: 攻击机:虚拟机kali.本机win10. 靶机:hacksudo: Thor,下载地址:https://download.vulnhub.com/hacksudo/hacksudo---Tho ...

  3. day27 CSS浮动、溢出 & js基本语法 & DOM文档流操作

    接day26CSS=>CSS定位 overflow属性 值 描述 示例 visible 默认值,内容不会被修剪,会呈现在元素框之外 hidden 内容会被修剪,并且其余内容是不可见的 overf ...

  4. js- day03- 将数据变成柱形图

    柱形图的渲染 * {             margin: 0;             padding: 0;         }  .box {             display: fle ...

  5. Java开发学习(四十六)----MyBatisPlus新增语句之id生成策略控制及其简化配置

    在前面有一篇博客:Java开发学习(四十一)----MyBatisPlus标准数据层(增删查改分页)开发,我们在新增的时候留了一个问题,就是新增成功后,主键ID是一个很长串的内容. 我们更想要的是按照 ...

  6. 【软考-中级-其他】03、NoSQL和云计算

    其他 NoSQL概述 分类 文档存储数据库:MongoDB 采用BSON格式完成存储数据和网络数据交换 BSON格式:JSON的二进制编码格式 逻辑结构包括:数据库.集合(相当于关系数据库的表).文档 ...

  7. 【面试真题】ThoughtWorks-编程结对技术面试(一面)-2022年2月11日

    一.技术问题 1.Hbase (1)介绍 (2)项目中是否有用到 于:存大量数据(千万),考虑性能,方便进行数据处理,对其进行分析 自己:ADS层和Flink的数据,DWD计算出的的中间层数据存入DW ...

  8. 【每日一题】【回溯】【StringBuilder】2021年12月7日-17. 电话号码的字母组合

    给定一个仅包含数字 2-9 的字符串,返回所有它能表示的字母组合.答案可以按 任意顺序 返回. 给出数字到字母的映射如下(与电话按键相同).注意 1 不对应任何字母. 来源:力扣(LeetCode)链 ...

  9. CGI、WSGI、uWSGI、ASGI……

    在学习 Python Web 开发时候,可能会遇到诸如 uwsgi.wsgi 等名词,下面通过梳理总结,探究它们之间的关系. CGI CGI(Common Gateway Interface)通用网关 ...

  10. Python全栈工程师之从网页搭建入门到Flask全栈项目实战(6) - Flask表单的实现

    1.表单介绍 1.1.表单知识回顾 常见的表单元素: 表单标签<form> action:表单提交的URL地址 method:表单请求的方式(GET/POSt) enctype:请求内容的 ...