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

配置环境变量

任务时间:5min ~ 10min

将 git 目录加入 PATH

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

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

生效环境变量

source /etc/bashrc

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

git --version

创建 git 账号密码

任务时间:5min ~ 10min

创建 git 账号

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

useradd -m gituser

然后为这个账号设置密码[?]

passwd gituser

控制台输入创建密码后,输入您自定义的密码,并二次确认。

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

任务时间:5min ~ 10min

创建 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 所在目录] , 编辑 /etc/passwd 文件,将最后一行关于 gituser 的登录 shell 配置改为 git-shell 的目录[?]如下

示例代码:/etc/passwd
gituser:x:500:500::/home/gituser:/usr/local/git/bin/git-shell

如果按照刚才的步骤执行, 这个位置应该是 /usr/local/git/bin/git-shell, 否则请通过 which git-shell 命令查看位置

安全目的, 限制 git 账号的 ssh 连接只能是登录 git-shell

使用搭建好的 Git 服务

克隆 test repo 到本地

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

实验完成

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

搭建 GIT 服务器的更多相关文章

  1. 搭建Git服务器

    在远程仓库一节中,我们讲了远程仓库实际上和本地仓库没啥不同,纯粹为了7x24小时开机并交换大家的修改. GitHub就是一个免费托管开源代码的远程仓库.但是对于某些视源代码如生命的商业公司来说,既不想 ...

  2. Git学习笔记(10)——搭建Git服务器

    本文主要记录了Git服务器的搭建,以及一些其他的配置,和最后的小总结. Git远程仓库服务器 其实远程仓库和本地仓库没啥不同,远程仓库只是每天24小时开机为大家服务,所以叫做服务器.我们完全可以把自己 ...

  3. centos 搭建git服务器

    centos 6搭建git服务器 安装 rpm -ivh http://mirrors.aliyun.com/epel/epel-release-latest-6.noarch.rpm yum ins ...

  4. 如何在服务器上搭建git服务器

    参考文章: http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/00137583770 ...

  5. 使用Gitosis搭建Git服务器

    使用Gitosis搭建Git服务器 作者: JeremyWei | 可以转载, 但必须以超链接形式标明文章原始出处和作者信息及版权声明 网址: http://weizhifeng.net/build- ...

  6. CentOS 6.4 搭建git 服务器

    CentOS 6.4 搭建git 服务器 (2013-11-22 19:04:09)转载▼ 标签: it 分类: Linux 此文件是依据markdown所编写,更好效果参见本人github的文档ht ...

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

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

  8. 在linux中搭建git服务器

    个人觉得, 以下搭建git服务器的过程就像是在linux增加了一个用户, 而这个用户的登录shell是 git-shell, 太刨根问底的东西我也说不清楚, 还是看下面的过程吧. 过程参考了网上的文章 ...

  9. 最新搭建GIT服务器仓库

    新开了一个项目,现在需要将代码放在公司GIT服务器上面.所以这里需要了一些问题..记录一下.因为原来公司这边的服务器的git用户都是创建好的.这里没有创建.需要的可以看看:http://www.cnb ...

  10. 在CentOS搭建Git服务器 转

    在CentOS搭建Git服务器 来自 :http://www.jianshu.com/p/69ea5ded3ede 前言 我们可以GitHub发布一些开源代码的公共仓库,但对于私密仓库就需要收费了.公 ...

随机推荐

  1. python函数的输入参数

    http://note.youdao.com/noteshare?id=c2a0a39ee3cae09a62dcbc9f96d04b56

  2. OpenCV---像素运算

    像素运算 分为算术运算和逻辑运算 算术运算: 加减乘除 调节亮度 调整对比度 逻辑运算: 与或非 遮罩层控制 一:算术运算 import cv2 as cv import numpy as np de ...

  3. 源码包安装 NGINX时候遇到的错误以及解决办法!

    最近跟一个公司合作,要把我们的应用安装在他们的服务器上,不过问题来了.他们为了他们自己服务器安全,不给我们root权限,只给了我们普通用户权限,所有的程序都要装在规定的路径里,限制可不少.没办法装吧~ ...

  4. 51nod 1548 欧姆诺姆和糖果 (制约关系优化枚举)

    1548 欧姆诺姆和糖果 题目来源: CodeForces 基准时间限制:1 秒 空间限制:131072 KB 分值: 20 难度:3级算法题  收藏  关注 一天,欧姆诺诺姆来到了朋友家里,他发现了 ...

  5. BZOJ2588:LCA+主席树来实现树上两点之间第K大点权查询

    对于每个节点维护这个节点到根的权值线段树 对于每个询问(x,y),这条路径上的线段树 tree[x]+tree[y]-tree[lca(x,y)]-tree[fa[lca(x,y)]] #includ ...

  6. CF544 C 背包 DP

    n个人写m行代码,第i人写一行代码有a[i]个bug,问总bug数不超过b的不同方案数. 其实就是个背包,dp[i][j][k]代表前i个人写了j行代码用了k个bug限度,然后随便转移一下就好了 /* ...

  7. 赶快收藏!16款最流行的 JavaScript 框架

    下面为大家介绍 16款最流行的 JavaScript 框架,赶快收藏! 1. jQuery – Javascript框架 jQuery 是最流行的 JavaScript 框架,它简化了HTML 文档遍 ...

  8. iOS数据存取---iOS-Apple苹果官方文档翻译

    CHENYILONG Blog iOS数据存取---iOS-Apple苹果官方文档翻译 数据存取/*技术博客http://www.cnblogs.com/ChenYilong/ 新浪微博http:// ...

  9. 【leetcode 简单】第五题 最长公共前缀

    编写一个函数来查找字符串数组中的最长公共前缀. 如果不存在公共前缀,返回空字符串 "". 示例 1: 输入: ["flower","flow" ...

  10. 2、Web基本介绍及Html语法介绍

    1.1 Web基本介绍 1.web就是world wide web的缩写.称之为全球广域网,俗称www.2.我们可以将web理解为就是当前的一种互联网.对于我们来说更多的就是网站服务.3.网站我们可以 ...