基于 CentOS 7 搭建 Git服务器
Git 是一款免费、开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。
⒈安装依赖库和编译工具
1.安装依赖库
yum install -y curl-devel expat-devel gettext-devel openssl-devel zlib-devel
2.安装编译工具
yum install -y gcc perl-ExtUtils-MakeMaker
⒉移除已安装的Git(如没有安装过可以忽略此步骤)
yum remove git
⒊下载安装Git
1.新建下载目录
选一个目录,用来放下载下来的安装包,这里将安装包放在 /usr/local/src 目录里
cd /usr/local/src
2.到官网找一个新版稳定的源码包下载到 /usr/local/src 文件夹里(我这里目前最新为2.22)
wget https://mirrors.edge.kernel.org/pub/software/scm/git/git-2.22.0.tar.gz
3.解压后编译
ⅰ解压
tar -zvxf git-2.22.0.tar.gz
ⅱ编译
cd git-2.22.0/ 进入解压目录
make all prefix=/usr/local/git 执行编译
ⅲ编译完成后, 安装到 /usr/local/git 目录下
make install prefix=/usr/local/git
⒋配置Git
1.配置环境变量
ⅰ将 git 目录加入 PATH
将原来的 PATH 指向目录修改为现在的目录
echo 'export PATH=$PATH:/usr/local/git/bin' >> /etc/bashrc
ⅱ使更新后的环境变量生效
source /etc/bashrc
ⅲ测试环境变量是否生效
git --version
此时我们能查看 git 版本号,说明我们已经安装成功了。
2.创建 git 账号密码
ⅰ创建账号
为我们刚刚搭建好的 git 创建一个账号
useradd -m fanqi
ⅱ创建密码
然后为这个账号设置密码(输入命令后系统要求输入密码,连续两次输入密码即可创建)
passwd fanqi
3.初始化 git 仓库并配置用户权限
ⅰ创建 git 仓库并初始化
我们创建 /data/repositories 目录用于存放 git 仓库
mkdir -p /data/repositories 创建目录
cd /data/repositories/ && git init --bare test.git 进入这个目录并初始化这个仓库
ⅱ配置用户权限
给 git 仓库目录设置用户和用户组并设置权限
chown -R fanqi:fanqi /data/repositories
chmod 755 /data/repositories
ⅲ更改git的shell为git-shell
⑴查找git-shell所在目录
如果按照刚才的步骤执行, 这个位置应该是 /usr/local/git/bin/git-shell, 否则请通过 which git-shell 命令查看位置
⑵编辑 /etc/passwd 文件,将最后一行关于 gituser 的登录 shell 配置改为 git-shell 的目录(安全目的, 限制 git 账号的 ssh 连接只能是登录 git-shell)
fanqi:x:500:500::/home/fanqi:/usr/local/git/bin/git-shell
ⅳ使用搭建好的 Git 服务,克隆 test repo 到本地
cd ~ && git clone fanqi@123.207.27.137:/data/repositories/test.git
基于 CentOS 7 搭建 Git服务器的更多相关文章
- CentOs上搭建git服务器
CentOs上搭建git服务器 首先安装setuptools wget http://pypi.python.org/packages/source/s/setuptools/setuptools-0 ...
- 基于 CentOS 8 搭建 openLDAP 服务器
转载请注明原文地址:基于 CentOS 8 搭建 openLDAP 服务器 环境 OS: CentOS 8.4.2105 PHP: 7.4.21 注意 CentOS 7 中可能默认提供了 openLD ...
- 【CentOS】搭建git服务器
参考资料: https://github.com/jackliu2013/recipes/blob/master/doc/linux/CentOS_6.4_git服务器搭建.md http://blo ...
- 在centos上搭建Git服务器
第一步:先安装一些相关依赖库和编译工具 yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel yum in ...
- Centos 7 搭建git服务器及使用gitolite控制权限
一.安装git yum install git git --version #查看git版本 二.升级git(可选,如果之前已经安装git,需要升级git到最新版本) git clone https: ...
- CentOS下搭建Git服务器
1.首先需要安装Git,可以使用yum源在线安装: [root@localhost Desktop]# yum install -y git 2.创建一个git用户,用来运行git服务 # addus ...
- CentOS下搭建Git服务器(基于SSH协议)
1,安装Git所需依赖包 # yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel # ...
- centos 搭建git服务器
centos 6搭建git服务器 安装 rpm -ivh http://mirrors.aliyun.com/epel/epel-release-latest-6.noarch.rpm yum ins ...
- CentOS 6.4 搭建git 服务器
CentOS 6.4 搭建git 服务器 (2013-11-22 19:04:09)转载▼ 标签: it 分类: Linux 此文件是依据markdown所编写,更好效果参见本人github的文档ht ...
随机推荐
- 漫谈计算机编码:从ASCII码到UTF-8
第一阶段 盘古开天辟地——ASCII码 计算机大家都知道,本质是二进制运算和存储.在计算机中人类的几乎所有文字和字符都没法直接表示,所以美国人在发明计算机的时候为了让计算机可以用于保存和传输文字,就发 ...
- 【线性代数】3-3:秩(Rank)
title: [线性代数]3-3:秩(Rank) categories: Mathematic Linear Algebra keywords: Rank Row Reduced form Pivot ...
- c 判断一个字符是否为空格
#include <stdio.h> #include <wctype.h> int main () { wchar_t c; ; wchar_t str[] = L" ...
- tracert命令与tracert (IP地址)-d有什么区别?
他们的意义基本相同,都是路由追踪,返回从源到目标的路由情况:但tracert -d不解析各路由器的名称,只返回路由器的IP地址.而tracert 不仅返回各路由器的IP地址,而且返回其名称.简单来说, ...
- AngularJs 拦截器,拦截请求
问题前述 我在项目中遇到这样一个问题: 在Angular项目中,会有很多需要用户点击操作的地方,如果用户点击过快会产生多次相同请求,会吃服务器带宽,如果这是其他涉及钱有关的操作,这会产生一个致命的问题 ...
- 8.5 JavaScript的BOM(二)
8.5 JavaScript的BOM 即 浏览器对象模型(Browser Object Model) 浏览器对象包括 一.Window(窗口) 如果需要打开一个新的网站,应该通过超级链接等方式让用户主 ...
- Linux设备驱动程序 之 主次设备号
主设备号和次设备号 对字符设备的访问是通过文件系统内的设备名称进行的,这些名称被称为特殊文件.设备文件.或者简单称之为文件系统树的节点,它们通常位于/dev目录.字符设备驱动程序的设备文件可以通过ls ...
- 【log4j】log4j.properties 文件示例
# 下面的文件内容是写程序长期要用的,放在这里留个底#Output information(higher than INFO) to stdout and file.info/debug/error ...
- Android网络编程之——文件断点下载
一:关于断点下载所涉及到的知识点 1.对SQLite的增删改查(主要用来保存当前任务的一些信息) 2.HttpURLConnection的请求配置 HttpURLConnection connecti ...
- 如何解决Sublime text中文乱码问题
Sublime Text 2是一个非常不错的源代码及文本编辑器,但是不支持GB2312和GBK编码在很多情况下会非常麻烦.不过Sublime Package Control所以供的插件可以让Subli ...