CentOS 上安装 GIT 服务
获取 YUM 中 GIT 信息:
yum info git
查看当前 GIT 的版本:
git --version
或
git version
卸载当前版本的 GIT:
yum remove git
再次查看当前 GIT 的版本,发现已不再显示 GIT 版本了,说明已卸载成功;
创建 git 目录,用于安装 GIT:
mkdir -p git
安装 GIT 的依赖库(如果已安装则可以略过):
yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel
yum install gcc perl-ExtUtils-MakeMaker
查看系统用户组:
cut -d: -f1 /etc/group
其中的 -d:指定字段的分隔符,默认的字段分隔符为“TAB”;
-f:显示指定字段的内容;
查看系统用户:
cut -d: -f1 /etc/passwd
下载 git-2.9.4.tar.gz:
wget https://www.kernel.org/pub/software/scm/git/git-2.9.4.tar.gz
将下载的 git-2.9.4.tar.gz 解压:
tar -xzvf git-2.9.4.tar.gz
进入到 git-2.9.4 目录中:
cd git-2.9.4
编译 GIT 源码:
make prefix=/usr/local/git all
安装 GIT 到 /usr/local/git 目录中:
make prefix=/usr/local/git install
为上传命令添加软链接:
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 命令添加软链接:
ln -s /usr/local/git/bin/git /usr/bin/git
打开环境变量文件 profile :
vim /etc/profile
在 profile 文件末尾添加如下命令:
export PATH="/usr/local/git/bin:$PATH"
使环境变量配置文件即可生效:
source /etc/profile
这时我们再看一下 git 的版本:
git --version
已经输出为:
git version 2.9.4
创建名为 git 的用户组:
groupadd git
创建名为 git 的用户并加入到 git 用户组中:
useradd git -g git
其中的第一个 git 是用户名,第二个 git 是用户组名,-g 表示加入用户组
查看已创建的 git 用户组:
cut -d: -f1 /etc/group | grep git
查看已创建的 git 用户:
cut -d: -f1 /etc/passwd | grep git
为用户 git 设置密码:
passwd git
根据提示输入密码,这里设置的为 123456,主要用于测试。
切换到 git 用户:
su - git
进入到 /home/ 目录中:
cd /home/
此时我们位于 /home/ 目录中;
为用户 git 创建“专属用户目前” git 并进入到其中:
mkdir -p git
cd git
此时我们位于 /home/git/ 目录中;
在 git 目录中创建隐藏目录 .ssh 并进入到其中:
mkdir -p .ssh
cd .ssh
此时我们位于 /home/git/.ssh 目录中;
为用户 git 创建公钥和私钥:
ssh-keygen -t rsa
执行成功会打印 Generating public/private rsa key pair.
根据提示输入两次密码,成功后会打印如下信息:
Your identification has been saved in /home/git/.ssh/id_rsa.
Your public key has been saved in /home/git/.ssh/id_rsa.pub.
这指明了当前用户 git 的公钥和私钥的存放位置;
创建 authorized_keys 文件:
touch authorized_keys
将生成的公钥 id_rsa.pub 文件中的内容复制到 authorized_keys 目录中,注意一个用户占一行,不可有空格,这样对于当前用户 git 就对 GIT 服务有了拉取和推送数
据的权限了;同理,在其它用户的 .ssh 文件夹下生成的公钥加入到 authorized_keys 文件中(另起一行,一个用户占一行,不可有空格),那么其它用户也就有了对 GIT 服务
的拉取与推送数据的权限,从而不需要再输入密码;
注意:
.ssh 文件夹的权限必须为 700
chmod 700 .ssh
authorized_keys 文件的权限必须为 600
authorized_keys
chmod 600 .ssh/authorized_keys
初始化名为 test_repository 的 git 测试库:
git init --bare test_repository.git
输出
Initialized empty Git repository in /home/git/test_repository.git/
则表示初始化名为 test_repository 库成功,这是个空库;
为 git 用户克隆一个库:
git clone git@192.168.82.208:test_repository.git
我们也可以通过 Eclipse 远程连接 GIT 服务,在 Eclipse 的 Git Repositories 试图中直接粘贴 git@192.168.82.208:test_repository.git
即可;
备注:
为指定用户创建公钥和私钥:
ssh-keygen -t rsa -C git
其中的 git 为用户名;
来源于:http://www.joyupx.com/test1/210
CentOS 上安装 GIT 服务的更多相关文章
- 在 CentOS 上安装 vsftp 服务
在 CentOS 上安装 vsftp 服务 1.查看当前 CentOS 服务器是否已安装了 vsftpd 服务: rpm -q vsftpd 如果打印如下类似的信息则表明已安装 vsftpd 服务: ...
- CentOS上安装GitBlit服务
简单介绍 在上一篇文章中,已经简单的介绍了如何在CentOS的服务器上搭建git服务器.但是这种方式实现的服务器功能比较弱,操作起来也比较繁琐.在网上搜索了一圈,感觉Gitblit比较符合我的需求.接 ...
- centos上搭建git服务--3
前言:当我们想要实现几个小伙伴合作开发同一个项目,或者建立一个资源分享平台的时候,GIT就是一个很好的选择.当然,既然是一个共有平台,那么把这个平台放到个人计算机上明显是不合适的,因此就要在服务器上搭 ...
- Git学习系列之CentOS上安装Git详细步骤(图文详解)
前言 最早Git是在Linux上开发的,很长一段时间内,Git也只能在Linux和Unix系统上跑.不过,慢慢地有人把它移植到了Windows上.现在,Git可以在Linux.Unix.Mac和Win ...
- centos上搭建git服务--4
Git是目前世界上最先进的分布式版本控制系统(没有之一).使用Svn的请参考<版本控制-svn服务器搭建和常用命令(centos 6.3)>,下面介绍Git的常用命令 常用命令 简单版 升 ...
- centos上搭建git服务--2
在 Linux 下搭建 Git 服务器 环境: 服务器 CentOS6.6 + git(version 1.7.1)客户端 Windows10 + git(version 2.8.4.window ...
- Centos上搭建git服务
1.安装Git $ yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel perl-devel $ yum ...
- CentOS上安装Git及配置远程仓库
首先登陆CentOS服务器,连接上服务器之后我们使用yum remove git 命令删除已安装的Git,若之前没安装过Git则不需要这一步.注意前提是你的CentOS服务器上安装了yum,这是Cen ...
- AWS ec2的ubuntu14.04上安装git服务
http://imerc.xyz/2015/11/13/Ubuntu-14-04%E4%B8%8AGit%E6%9C%8D%E5%8A%A1%E5%99%A8%E7%9A%84%E6%90%AD%E5 ...
随机推荐
- bzoj1560:[JSOI2009]火星藏宝图(斜率优化)
题目描述 在火星游玩多日,jyy偶然地发现了一张藏宝图.根据藏宝图上说法,宝藏被埋藏在一个巨大的湖里的N个岛上(2<=N<=200,000).为了方便描述,地图把整个湖划分成M行M列(1& ...
- USACO 1.1.2 Greedy Gift Givers(gift1)
这道题大意就是几个人互送礼物,让你求每个人的盈利. 原题给的样例数据: 5(人的个数.) =========(下面是人名,输出按照这顺序)davelauraowenvickamr ========== ...
- linux 内核的 switch_to原理
switch_to:这是一个宏,有三个参数prev,next,last 局部变量prev,next:指向进程描述符的内存地址 首先明确的是:last和prev是同一个,用last只是为了理解方便,完全 ...
- sqlmap用法
用法 Usage: python sqlmap.py [options] Options: -h, --help Show basic help message and exit -hh Show a ...
- java 的开发工具IDEA使用 中Debug 调试工具使用
IDEA JetBrains(这个公司的名称翻译过来就是“大脑喷射?”) 公司的宣传语是这么说的:Develop with pleasure!(带着快乐开发!) 话不多说 开始debug 1, ...
- echarts分段(一段一种颜色)显示
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- sysbench 安装、使用和测试
摘要: sysbench是一个开源的.模块化的.跨平台的多线程性能测试工具,可以用来进行CPU.内存.磁盘I/O.线程.数据库的性能测试.目前支持的数据库有MySQL.Oracle和Post ...
- Java 目录和文件的复制
1.复制一个目录及其子目录.文件到另外一个目录 //复制一个目录及其子目录.文件到另外一个目录 public void copyFolder(File src, File dest) throws I ...
- IKVM:java代码c#调用
在工作中遇到对接java接口,涉及到java加密或签名问题,.net无法实.就将java代码编辑为dll给.net调用 注:这里只做简单java代码处理,不涉及到复杂的java包 java文件处理: ...
- gulp不压缩打包layui
从网上下载的layui都是压缩包,如何打包在一个文件且不压缩呢?如下方法: 1.https://gitee.com/sentsin/layui下载源码(本文的为2.4.5版本) 2.安装nodejs( ...