• centos git服务器介绍

远程仓库实际上和本地仓库没啥不同,就是为了自己代码私有化。GitHub就是一个免费托管开源代码的远程仓库。但是对于一些源代码不公开的商业公司来说,既不想公开源代码,又舍不得给GitHub交保护费,那就只能自己搭建一台Git服务器作为私有仓库使用。

1.1、安装git服务环境准备

yum -y install curl curl-devel zlib-devel openssl-devel perl cpio expat-devel gettext-devel gcc cc

1.2、 下载git的Linux版本

Git官网:Git

1.3、解压缩git

cd /usr/local
tar -zxvf git-2.25.0
cd cd /usr/local/git-2.25.0

1.3.1安装和编译

   将git安装到 /usr/local/git 目录下。

make prefix=/usr/local/git all
   make prefix=/usr/local/git install

1.3.2 安装后,查看版本

   git --version

   可能展示与实际安装版本不符。是因为默认使用了"/usr/bin"下的git

   解决办法:配置环境变量

   vim /etc/profile

   然后在文件的最后一行,添加下面的内容,然后保存退出。

   export PATH=/usr/local/git/bin:$PATH

   1.3.3刷新配置文件

   source /etc/profile

   再次查看,git --version

   这时候版本查看不一致的问题就解决了

  1.3.4生成SSH Key

  设置用户名和email

git config --global user.name "zhangsanfeng"
   git config --global user.email "xxxx@163.com"
   生成ssh key
   ssh-keygen -t rsa -C "xxxx@163.com"

    注意下输出的信息,可以看出.pub在哪个路径

centos 部署 gitlab centos搭建git服务器_centos 部署 gitlab

 

1.4、添加特定用户作为Git的管理者,并为git用户设置密码

[root@localhost home]#id git
id: git: no such user
[root@localhost home]#groupadd -g 108 -r git && useradd -s /sbin/nologin -u 108 -r -g git git

//密码可进行修改
[root@localhost home]#passwd git

//此命令执行后会创建/home/git目录作为git用户的主目录。

取消git用户x-sheel的登录操作

centos 部署 gitlab centos搭建git服务器_git_02

1.5、创建Git仓库

首先我们选定一个目录作为Git仓库,假定是/home/gitrepo/runoob.git,在/home/gitrepo目录下输入命令:


$ cd /home
$ mkdir gitrepo
$ chown git:git gitrepo/
$ cd gitrepo

$ git init --bare runoob.git
Initialized empty Git repository in /home/gitrepo/runoob.git/


以上命令Git创建一个空仓库,服务器上的Git仓库通常都以.git结尾。然后,把仓库所属用户改为git:


$ chown -R git:git runoob.git


注意下面命令一定要切换到git用户进行创建,才能保证本机连接远程私服权限足够

git --bare init /home/git/Repository

//推荐使用:git --bare init初始化仓库。

      

centos 部署 gitlab centos搭建git服务器_服务器_03

目录下出现如图所示表示仓库创建完成

1.8、连接私人服务器

私有git服务器搭建完成后就可以向连接github一样连接使用了,但是我们的git服务器并没有配置密钥登录,所以每次连接时需要输入密码。

使用命令连接:

git remote add origin ssh://git@192.168.168.138/home/git/Repository

这种形式和刚才使用的形式好像不一样,前面有ssh://前缀,好吧你也可以这样写:1.9

$ git remote add origin git@192.168.168.138:Repository